Liquidity strategy tester [Influxum]This tool is based on the concept of liquidity. It includes 10 methods for identifying liquidity in the market. Although this tool is presented as a strategy, we see it more as a data-gathering instrument.
Warning: This indicator/strategy is not intended to generate profitable strategies. It is designed to identify potential market advantages and help with identifying effective entry points to capitalize on those advantages.
Once again, we have advanced the methods of effectively searching for liquidity in the market. With strategies, defined by various entry methods and risk management, you can find your edge in the market. This tool is backed by thorough testing and development, and we plan to continue improving it.
In its current form, it can also be used to test well-known ICT or Smart Money concepts. Using various methods, you can define market structure and identify areas where liquidity is located.
Fair Value Gaps - one of the entry signal options is fair value gaps, where an imbalance between buyers and sellers in the market can be expected.
Time and Price Theory - you can test this by setting liquidity from a specific session and testing entries as that liquidity is grabbed
Judas Swing - can be tested as a market reversal after a breakout during the first hours of trading.
Power of Three - accumulation can be observed as the market moving within a certain range, identified as cluster liquidity in our tool, manipulation occurs with the break of liquidity, and distribution is the direction of the entry.
🟪 Methods of Identifying Liquidity
Pivot Liquidity
This refers to liquidity formed by local extremes – the highest or lowest prices reached in the market over a certain period. The period is defined by a pivot number and determines how many candles before and after the high/low were higher/lower. Simply put, the pivot number represents the number of adjacent candles to the left and right, with a lower high for a pivot high and a higher low for a pivot low. The higher the number, the more significant the high/low is. Behind these local market extremes, we expect to find orders waiting for breakout as well as stop-losses.
Gann Swing
Similar to pivot liquidity, Gann swing identifies significant market points. However, instead of candle highs and lows, it focuses on the closing prices. A Gann swing is formed when a candle closes above (or below) several previous closes (the number is again defined by a strength parameter).
Percentage Change
Apart from ticks, percentages are also a key unit of market movement. In the search for liquidity, we monitor when a local high or low is formed. For liquidity defined by percentage change, a high must be a certain percentage higher than the last low to confirm a significant high. Similarly, a low must be a defined percentage away from the last significant high to confirm a new low. With the right percentage settings, you can eliminate market noise.
Session Range (3x)
Session range is a popular concept for finding liquidity, especially in smart money concepts (SMC). You can set up liquidity visualization for the Asian, London, or New York sessions – or even all three at once. This tool allows you to work with up to three sessions, so you can easily track how and if the market reacts to liquidity grabs during these sessions.
Tip for traders: If you want to see the reaction to liquidity grab during a specific session at a certain time (e.g., the well-known killzone), you can set the Trading session in this tool to the exact time where you want to look for potential entries.
Unfinished Auction
Based on order flow theory, an unfinished auction occurs when the market reverses sharply without filling all pending orders. In price action terms, this can be seen as two candles at a local high or low with very similar or identical highs/lows. The maximum difference between these values is defined as Tolerance, with the default setting being 3 ticks. This setting is particularly useful for filtering out noise during slower market periods, like the Asian session.
Double Tops and Bottoms
A very popular concept not only from smart money concepts but also among price pattern traders is the double bottom and double top. This occurs when the market stops and reverses at a certain price twice in a row. In the tool, you can set how many candles apart these bottoms/tops can be by adjusting the Length parameter. According to some theories, double bottoms are more effective when there is a significant peak between the two bottoms. You can set this in the tool as the Swing value, which defines how large the movement (expressed in ticks) must be between the two peaks/bottoms. The final parameter you can adjust is Tolerance, which defines the possible price difference between the two peaks/bottoms, also expressed in ticks.
Range or Cluster Liquidity
When the market stays within a certain price range, there’s a chance that breakout orders and stop-losses are accumulating outside of this range. Our tool defines ranges in two ways:
Candle balance calculates the average price within a candle (open, high, low, and close), and it defines consolidation when the centers of candles are within a certain distance from each other.
Overlap confirms consolidation when a candle overlaps with the previous one by a set percentage.
Daily, Weekly, and Monthly Highs or Lows
These options simply define liquidity as the previous day’s, week’s, or month’s highs or lows.
Visual Settings
You can easily adjust how liquidity is displayed on the chart, choosing line style, color, and thickness. To display only uncollected liquidity, select "Delete grabbed liquidity."
Liquidity Duration
This setting allows you to control how long liquidity areas remain valid. You can cancel liquidity at the end of the day, the second day, or after a specific number of candles.
🟪 Strategy
Now we come to the part of working with strategies.
Max # of bars after liquidity grab – This parameter allows you to define how many candles you can search for entry signals from the moment liquidity is grabbed. If you are using engulfing as an entry signal, which consists of 2 candles, keep in mind that this number must be at least 2. In general, if you want to test a quick and sharp reaction, set this number as low as possible. If you want to wait for a structural change after the liquidity grab, which may require more candles, set the number a bit higher.
🟪 Strategy - entries
In this section, we define the signals or situations where we can enter the market after liquidity has been taken out.
Liquidity grab - This setup triggers a trade immediately after liquidity is grabbed, meaning the trade opens as the next candle forms.
Close below, close above - This refers to situations where the price closes below liquidity, but then reverses and closes above liquidity again, suggesting the liquidity grab was a false breakout.
Over bar - This occurs when the entire candle (high and low) passes beyond the liquidity level but then experiences a pullback.
Engulfing - A popular price action pattern that is included in this tool.
2HL - weak, medium, strong - A variation of a popular candlestick pattern.
Strong bar - A strong reactionary candle that forms after a liquidity grab. If liquidity is grabbed at a low, this would be a strong long candle that closes near its high and is significantly larger compared to typical volatility.
Naked bar - A candlestick pattern we’ve tested that serves as a good confirmation of market movement.
FVG (Fair Value Gap) - A currently popular concept. This is the only signal with additional settings. “Pending FVG order valid” means if a fair value gap forms after a liquidity grab, a limit order is placed, which remains valid for a set number of candles. “FVG minimal tick size” allows you to filter based on the gap size, measured in ticks. “GAP entry model” lets you decide whether to place the limit order at the gap close or its edge.
🟪 Strategy - General
Long, short - You can choose whether to focus on long or short trades. It’s interesting to see how long and short trades yield different results across various markets.
Pyramiding - By default, the tool opens only one trade at a time. If a new signal arises while a trade is open, it won’t enter another position unless the pyramiding box is checked. You also need to set the maximum number of open trades in the Properties.
Position size - Simply set the size of the traded position.
🟪 Strategy - Time
In this section, you can set time parameters for the strategy being tested.
Test since year - As the name implies, you can limit the testing to start from a specific year.
Trading session - Define the trading session during which you want to test entries. You can also visualize the background (BG) for confirmation.
Exclude session - You can set a session period during which you prefer not to search for trades. For example, when the New York session opens, volatility can sharply increase, potentially reducing the long-term success rate of the tested setup.
🟪 Strategy - Exits
This section lets you define risk management rules.
PT & SL - Set the profit target (PT) and stop loss (SL) here.
Lowest/highest since grab - This option sets the stop loss at the lowest point after a liquidity grab at a low or at the highest point after a liquidity grab at a high. Since markets usually overshoot during liquidity grabs, it’s good practice to place the stop loss at the furthest point after the grab. You can also set your risk-reward ratio (RRR) here. A value of 1 sets an RRR of 1:1, 2 means 2:1, and so on.
Lowest/highest last # bars - Similar to the previous option, but instead of finding the extreme after a liquidity grab, it identifies the furthest point within the last number of candles. You can set how far back to look using the # bars field (for an engulfing pattern, 2 is optimal since it’s made of two candles, and the stop loss can be placed at the edge of the engulfing pattern). The RRR setting works the same way as in the previous option.
Other side liquidity grab - If this option is checked, the trade will exit when liquidity is grabbed on the opposite side (i.e., if you entered on a liquidity grab at a low, the trade will exit when liquidity is grabbed at a high).
Exit after # bars - A popular exit strategy where you close the position after a set number of candles.
Exit after # bars in profit - This option exits the trade once the position is profitable for a certain number of consecutive candles. For example, if set to 5, the position will close when 5 consecutive candles are profitable. You can also set a maximum number of candles (in the max field), ensuring the trade is closed after a certain time even if the profit condition hasn’t been met.
🟪 Alerts
Alerts are a key tool for traders to ensure they don’t miss trading opportunities. They also allow traders to manage their time effectively. Who would want to sit in front of the computer all day waiting for a trading opportunity when they could be attending to other matters? In our tool, you currently have two options for receiving alerts:
Liquidity grabs alert – if you enable this feature and set an alert, the alert will be triggered every time a candle on the current timeframe closes and intersects with the displayed liquidity line.
Entry signals alert – this feature triggers an alert when a signal for entry is generated based on the option you’ve selected in the Entry type. It’s an ideal way to be notified only when a trading opportunity appears according to your predefined rules.
Cerca negli script per "the strat"
Larry Connors 3 Day High/Low StrategyThe Larry Connors 3 Day High/Low Strategy is a short-term mean-reversion trading strategy that is designed to identify potential buying opportunities when a security is oversold. This strategy is based on the principles developed by Larry Connors, a well-known trading system developer and author.
Key Strategy Elements:
1. Trend Confirmation: The strategy first confirms that the security is in a long-term uptrend by ensuring that the closing price is above the 200-day moving average (condition1). This rule helps filter trades to align with the longer-term trend.
2. Short-Term Pullback: The strategy looks for a short-term pullback by ensuring that the closing price is below the 5-day moving average (condition2). This identifies potential entry points when the price temporarily moves against the longer-term trend.
3. Three Consecutive Lower Highs and Lows:
• The high and low two days ago are lower than those of the day before (condition3).
• The high and low yesterday are lower than those of two days ago (condition4).
• Today’s high and low are lower than yesterday’s (condition5).
These conditions are used to identify a sequence of declining highs and lows, signaling a short-term pullback or oversold condition in the context of an overall uptrend.
4. Entry and Exit Signals:
• Buy Signal: A buy order is triggered when all the above conditions are met (buyCondition).
• Sell Signal: A sell order is executed when the closing price is above the 5-day moving average (sellCondition), indicating that the pullback might be ending.
Risks of the Strategy
1. Mean Reversion Failure: This strategy relies on the assumption that prices will revert to the mean after a short-term pullback. In strong downtrends or during market crashes, prices may continue to decline, leading to significant losses.
2. Whipsaws and False Signals: The strategy may generate false signals, especially in choppy or sideways markets where the price does not follow a clear trend. This can lead to frequent small losses that can add up over time.
3. Dependence on Historical Patterns: The strategy is based on historical price patterns, which do not always predict future price movements accurately. Sudden market news or economic changes can disrupt the pattern.
4. Lack of Risk Management: The strategy as written does not include stop losses or position sizing rules, which can expose traders to larger-than-expected losses if conditions change rapidly.
About Larry Connors
Larry Connors is a renowned trader, author, and founder of Connors Research and TradingMarkets.com. He is widely recognized for his development of quantitative trading strategies, especially those focusing on short-term mean reversion techniques. Connors has authored several books on trading, including “Short-Term Trading Strategies That Work” and “Street Smarts,” co-authored with Linda Raschke. His strategies are known for their systematic, rules-based approach and have been widely used by traders and investment professionals.
Connors’ research often emphasizes the importance of trading with the trend, managing risk, and using statistically validated techniques to improve trading outcomes. His work has been influential in the field of quantitative trading, providing accessible strategies for traders at various skill levels.
References
1. Connors, L., & Raschke, L. (1995). Street Smarts: High Probability Short-Term Trading Strategies.
2. Connors, L. (2009). Short-Term Trading Strategies That Work.
3. Fama, E. F., & French, K. R. (1988). Permanent and Temporary Components of Stock Prices. Journal of Political Economy, 96(2), 246-273.
This strategy and its variations are popular among traders looking to capitalize on short-term price movements while aligning with longer-term trends. However, like all trading strategies, it requires rigorous backtesting and risk management to ensure its effectiveness under different market conditions.
Dow Theory based Strategy (Markttechnik)What makes this script unique?
calculates two trends at the same time: a big one for the overall strong trend - and a small one to trigger a trade after a small correction within the big trend
only if both trends (the small and the big trend) are in an uptrend, a buy signal is created: this prevents a buy signal from being generated in a falling market just because an upward movement begins in a small trend
the exit strategy can be configured very flexibly and individually: use the last low as stop loss and automatically switch to a trialing stop loss as soon as the take profit is reached (instead of finishing the trade)
the take profit strategy can also be configured - e.g. use the last high, a fixed percentage or a combination of it
plots each trade in detail on the chart - e.g. inner candles or the exact progression of the stop loss over the entire duration of the trade to allow you to analyze each trade precisely
What does the script do and how?
In this strategy an intact upward trend is characterized by higher highs and lower lows only if the big trend and the small trend are in an upward trend at the same time.
The following describes how the script calculates a buy signal. Every step is drawn to the chart immediately - see example chart above:
1. the stock rises in the big trend - i.e. in a longer time frame
2. a correction takes place (the share price falls) - but does not create a new low
3. the stock rises again in the big trend and creates a new high
From now on, the big trend is in an intact upward trend (until it falls below its last low).
This is drawn to the chart as 3 bold green zigzag lines.
But we do not buy right now! Instead, we want to wait for a correction in the big trend and for the start of a small upward trend.
4. a correction takes place (not below the low from 2.)
Now, the script also starts to calculate the small trend:
5. the stock rises in the small trend - i.e. in a shorter time frame
6. a small correction takes place (not below the low from 4.)
7. the stock rises above the high from 5.: a new high in the shorter time frame
Now, both trends are in an intact upward trend.
A buy signal is created and both the minor and major trend are colored green on the chart.
Now, the trade is active and:
the stop loss is calculated and drawn for each candle
the take profit is calculated and drawn to the chart
as soon as the price reaches the take profit or the stop loss, the trade is closed
Features and functionalities
Uptrend : An intact upward trend is characterized by higher highs and lower lows. Uptrends are shown in green on the chart.
The beginning of an uptrend is numbered 1, each subsequent high is numbered 2, and each low is numbered 3.
Downtrend: An intact downtrend is characterized by lower highs and lower lows. Downtrends are displayed in red on the chart.
Note that our indicator does not show the numbering of the points of the downtrend.
Trendless phases: If there is no intact trend, we are in a trendless phase. Trendless phases are shown in blue on the chart.
This occurs after an uptrend, when a lower low or a lower high is formed. Or after a downtrend, when a higher low or a higher high is formed.
Buy signals
A buy signal is generated as soon as a new upward trend has been formed or a new high has been established in an intact upward trend.
But even before a buy signal is generated, this strategy anticipates a possible emerging trend and draws the next possible trading opportunity to the chart.
In addition to the (not yet reached) buy price, the risk-reward ratio, the StopLoss and the TakeProfit price is shown.
With this information, you can already enter a StopBuy order, which is thus triggered directly with the then created buy signal.
You can configure, if a buy signal shall be created while the big trend is an uptrend, a downtrend and/or trendless.
Exit strategy
With this strategy, you have multiple possibilities to close your position. All of them can be configured within the settings. In general, you can combine a take profit strategy with a stop loss strategy.
The take profit price will be calculated once for each trade. It will be drawn to the chart for active trade.
Depending on your configuration, this can be the last high (which is often a resistance level), a fixed percentage added to the buy price or the maximum of both.
You can also configure that a trailing stop loss is used as soon as the take profit price is reached once.
The stop loss gets recalculated with each candle and is displayed and plotted for each active and finished trade. With this, you can easily check how the stop loss changed during your trades.
The stop loss can be configured flexibly:
Use the classic "trailing stop loss" that follows the price from below.
Set the stop loss to the last low and tighten it every time the small trend marks a new local low.
Confiure that the stop loss is tightened as soon as the break even is reached. Nothing is more annoying than a trade turning from a win to a loss.
Ignore inside candles (see description below) and relax the stop loss to use the outside candle for its calculation.
Inner candles
Inner candles are created when the candle body is within the maximum values of a previous candle (the outer candle). There can be any number of consecutive inner candles. As soon as you have activated the "Check inner candles" setting, all consecutive inner candles will be highlighted in yellow on the chart.
Prices during an inner candle scenario might be irrelevant for trading and can be interpreted as fluctuations within the outside candle. For this reason, the trailing stop loss should not be aligned with inner candles. Therefore, as soon as an inner candle occurs, the stop loss is reset and the low at the time of the outside candle is used as the calculation for the trailing stop loss. This will all be plotted for you on the chart.
Display of the trades:
All active and closed trades of the last 5 years are displayed in the chart with buy signal, sell, stop loss history, inside candles and statistics.
Backtesting:
The strategy can be simulated for each stock over the period of the last 5 years. Each individual trade is recorded and can be traced and analyzed in the chart including stop loss history. Detailed evaluations and statistics are available to evaluate the performance of the strategy.
Additional Statistics
This strategy immediately displays a statistic table to the chart area giving you an overview of its performance over the last years for the given chart.
This includes:
The total win/loss in $ and %
The win/loss per year in %
The active investment time in days and % (e.g. invested 10 of 100 trading days -> 10%)
The total win/loss in %, extrapolated to 100% equity usage: Only with this value can strategies really be compared. Because you are not invested between the trades and could invest in other stocks during this time. This value indicates how much profit you would have made if you had been invested 100% of the time - or to put it another way - if you had been invested 100% of the time in stocks with exactly the same performance. Let's say you had only one trade in the last 5 years that lasted, say, only one month and made 5% profit. This would be significantly better than a strategy with which you were invested for, say, 5 years and made 10% profit.
The total profit/loss per year in %, extrapolated to 100% equity usage
Notifications (alerts):
Get alerted before a new buy signal emerges to create an order if necessary and not miss a trade. You can also be notified when the stop loss needs to be adjusted. The notification can be done in different ways, e.g. by Mail, PopUp or App-Notification. This saves them the annoying, time-consuming and error-prone "click through" all the charts.
Settings: Display Settings
With these settings, you have the possibility to:
Show the small or the big trend as a background color
Configure if the numbers (1-2-3-2-3) shall be shown at all or only for the small, the big trend or both
Settings: Trend calculation - fine tuning
Drawing trend lines on a chart is not an exact science. Some highs and lows are not very clear or significant. And so it will always happen that 2 different people would draw different trendlines for the same chart. Unfortunately, there is no exact "right" or "wrong" here.
With the options under "Trend Calculation - Fine Tuning" you have the possibility to influence the drawing in of trends and to adapt it to your personal taste.
Small Trend, Big Trend : With these settings you can influence how significant a high or low has to be to recognize them as an independent high or low. The larger the values, the more significant a high or low must be to be recognized as such.
High and low recognition : With this setting you can influence when two adjacent, almost identical highs or lows should be recognized as independent highs or lows. The higher the value, the more different "similar" highs or lows must be in order to be recognized as such.
Which default settings were selected and why
Show Trades: true - its often useful to see all recent trades in the chart
Time Frame: 1 day - most common time frame (except for day traders)
Take Profit: combined 10% - the last high is taken as take profit because the trend often changes there, but only if there is at least 10% profit to ensure we do not risk money for a tiny profit
Stop Loss: combined - the last low is used as stop loss because the trend would break there and switch to a trailing stop loss as soon as our take profit is reached to let our profits run without risking them anymore
Stop Loss distance: 3% - we are giving the price 3% air (below the last low) to avoid being stopped out due to a short price drop
Trailing Stop Loss: 2% - we have to give the stop loss some room to avoid being stopped out prematurely; this is a value that is well balanced between a certain downside distance and the profit-taking ratio
Set Stop Loss to break even: true, 2% - once we reached the break even, it is a common practice to not risk our money anymore, the value is set to the same value as the trailing stop loss
Trade Filter: Uptrend - we only start trades if the big trend is an uptrend in the expectation that it will continue after a small correction
Display settings: those will not influence the trades, feel free to change them to your needs
Trend calculation - Fine Tuning: 1/1,5/0,05; influences the internal calculation for highs and lows and how significant they need to be to be considered a new high or low; the default values will provide you nicely calculated trends in the daily time frame; if there are too many or too few lows and highs according to your taste, feel free to play around and immediately see the result drawn to the chart; read the manual for a detailed description of this values
Note that you can (and should) configure the general trading properties like your initial capital, order size, slippage and commission.
Intramarket Difference Index StrategyHi Traders !!
The IDI Strategy:
In layman’s terms this strategy compares two indicators across markets and exploits their differences.
note: it is best the two markets are correlated as then we know we are trading a short to long term deviation from both markets' general trend with the assumption both markets will trend again sometime in the future thereby exhausting our trading opportunity.
📍 Import Notes:
This Strategy calculates trade position size independently (i.e. risk per trade is controlled in the user inputs tab), this means that the ‘Order size’ input in the ‘Properties’ tab will have no effect on the strategy. Why ? because this allows us to define custom position size algorithms which we can use to improve our risk management and equity growth over time. Here we have the option to have fixed quantity or fixed percentage of equity ATR (Average True Range) based stops in addition to the turtle trading position size algorithm.
‘Pyramiding’ does not work for this strategy’, similar to the order size input togeling this input will have no effect on the strategy as the strategy explicitly defines the maximum order size to be 1.
This strategy is not perfect, and as of writing of this post I have not traded this algo.
Always take your time to backtests and debug the strategy.
🔷 The IDI Strategy:
By default this strategy pulls data from your current TV chart and then compares it to the base market, be default BINANCE:BTCUSD . The strategy pulls SMA and RSI data from either market (we call this the difference data), standardizes the data (solving the different unit problem across markets) such that it is comparable and then differentiates the data, calling the result of this transformation and difference the Intramarket Difference (ID). The formula for the the ID is
ID = market1_diff_data - market2_diff_data (1)
Where
market(i)_diff_data = diff_data / ATR(j)_market(i)^0.5,
where i = {1, 2} and j = the natural numbers excluding 0
Formula (1) interpretation is the following
When ID > 0: this means the current market outperforms the base market
When ID = 0: Markets are at long run equilibrium
When ID < 0: this means the current market underperforms the base market
To form the strategy we define one of two strategy type’s which are Trend and Mean Revesion respectively.
🔸 Trend Case:
Given the ‘‘Strategy Type’’ is equal to TREND we define a threshold for which if the ID crosses over we go long and if the ID crosses under the negative of the threshold we go short.
The motivating idea is that the ID is an indicator of the two symbols being out of sync, and given we know volatility clustering, momentum and mean reversion of anomalies to be a stylised fact of financial data we can construct a trading premise. Let's first talk more about this premise.
For some markets (cryptocurrency markets - synthetic symbols in TV) the stylised fact of momentum is true, this means that higher momentum is followed by higher momentum, and given we know momentum to be a vector quantity (with magnitude and direction) this momentum can be both positive and negative i.e. when the ID crosses above some threshold we make an assumption it will continue in that direction for some time before executing back to its long run equilibrium of 0 which is a reasonable assumption to make if the market are correlated. For example for the BTCUSD - ETHUSD pair, if the ID > +threshold (inputs for MA and RSI based ID thresholds are found under the ‘‘INTRAMARKET DIFFERENCE INDEX’’ group’), ETHUSD outperforms BTCUSD, we assume the momentum to continue so we go long ETHUSD.
In the standard case we would exit the market when the IDI returns to its long run equilibrium of 0 (for the positive case the ID may return to 0 because ETH’s difference data may have decreased or BTC’s difference data may have increased). However in this strategy we will not define this as our exit condition, why ?
This is because we want to ‘‘let our winners run’’, to achieve this we define a trailing Donchian Channel stop loss (along with a fixed ATR based stop as our volatility proxy). If we were too use the 0 exit the strategy may print a buy signal (ID > +threshold in the simple case, market regimes may be used), return to 0 and then print another buy signal, and this process can loop may times, this high trade frequency means we fail capture the entire market move lowering our profit, furthermore on lower time frames this high trade frequencies mean we pay more transaction costs (due to price slippage, commission and big-ask spread) which means less profit.
By capturing the sum of many momentum moves we are essentially following the trend hence the trend following strategy type.
Here we also print the IDI (with default strategy settings with the MA difference type), we can see that by letting our winners run we may catch many valid momentum moves, that results in a larger final pnl that if we would otherwise exit based on the equilibrium condition(Valid trades are denoted by solid green and red arrows respectively and all other valid trades which occur within the original signal are light green and red small arrows).
another example...
Note: if you would like to plot the IDI separately copy and paste the following code in a new Pine Script indicator template.
indicator("IDI")
// INTRAMARKET INDEX
var string g_idi = "intramarket diffirence index"
ui_index_1 = input.symbol("BINANCE:BTCUSD", title = "Base market", group = g_idi)
// ui_index_2 = input.symbol("BINANCE:ETHUSD", title = "Quote Market", group = g_idi)
type = input.string("MA", title = "Differrencing Series", options = , group = g_idi)
ui_ma_lkb = input.int(24, title = "lookback of ma and volatility scaling constant", group = g_idi)
ui_rsi_lkb = input.int(14, title = "Lookback of RSI", group = g_idi)
ui_atr_lkb = input.int(300, title = "ATR lookback - Normalising value", group = g_idi)
ui_ma_threshold = input.float(5, title = "Threshold of Upward/Downward Trend (MA)", group = g_idi)
ui_rsi_threshold = input.float(20, title = "Threshold of Upward/Downward Trend (RSI)", group = g_idi)
//>>+----------------------------------------------------------------+}
// CUSTOM FUNCTIONS |
//<<+----------------------------------------------------------------+{
// construct UDT (User defined type) containing the IDI (Intramarket Difference Index) source values
// UDT will hold many variables / functions grouped under the UDT
type functions
float Close // close price
float ma // ma of symbol
float rsi // rsi of the asset
float atr // atr of the asset
// the security data
getUDTdata(symbol, malookback, rsilookback, atrlookback) =>
indexHighTF = barstate.isrealtime ? 1 : 0
= request.security(symbol, timeframe = timeframe.period,
expression = [close , // Instentiate UDT variables
ta.sma(close, malookback) ,
ta.rsi(close, rsilookback) ,
ta.atr(atrlookback) ])
data = functions.new(close_, ma_, rsi_, atr_)
data
// Intramerket Difference Index
idi(type, symbol1, malookback, rsilookback, atrlookback, mathreshold, rsithreshold) =>
threshold = float(na)
index1 = getUDTdata(symbol1, malookback, rsilookback, atrlookback)
index2 = getUDTdata(syminfo.tickerid, malookback, rsilookback, atrlookback)
// declare difference variables for both base and quote symbols, conditional on which difference type is selected
var diffindex1 = 0.0, var diffindex2 = 0.0,
// declare Intramarket Difference Index based on series type, note
// if > 0, index 2 outpreforms index 1, buy index 2 (momentum based) until equalibrium
// if < 0, index 2 underpreforms index 1, sell index 1 (momentum based) until equalibrium
// for idi to be valid both series must be stationary and normalised so both series hae he same scale
intramarket_difference = 0.0
if type == "MA"
threshold := mathreshold
diffindex1 := (index1.Close - index1.ma) / math.pow(index1.atr*malookback, 0.5)
diffindex2 := (index2.Close - index2.ma) / math.pow(index2.atr*malookback, 0.5)
intramarket_difference := diffindex2 - diffindex1
else if type == "RSI"
threshold := rsilookback
diffindex1 := index1.rsi
diffindex2 := index2.rsi
intramarket_difference := diffindex2 - diffindex1
//>>+----------------------------------------------------------------+}
// STRATEGY FUNCTIONS CALLS |
//<<+----------------------------------------------------------------+{
// plot the intramarket difference
= idi(type,
ui_index_1,
ui_ma_lkb,
ui_rsi_lkb,
ui_atr_lkb,
ui_ma_threshold,
ui_rsi_threshold)
//>>+----------------------------------------------------------------+}
plot(intramarket_difference, color = color.orange)
hline(type == "MA" ? ui_ma_threshold : ui_rsi_threshold, color = color.green)
hline(type == "MA" ? -ui_ma_threshold : -ui_rsi_threshold, color = color.red)
hline(0)
Note it is possible that after printing a buy the strategy then prints many sell signals before returning to a buy, which again has the same implication (less profit. Potentially because we exit early only for price to continue upwards hence missing the larger "trend"). The image below showcases this cenario and again, by allowing our winner to run we may capture more profit (theoretically).
This should be clear...
🔸 Mean Reversion Case:
We stated prior that mean reversion of anomalies is an standerdies fact of financial data, how can we exploit this ?
We exploit this by normalizing the ID by applying the Ehlers fisher transformation. The transformed data is then assumed to be approximately normally distributed. To form the strategy we employ the same logic as for the z score, if the FT normalized ID > 2.5 (< -2.5) we buy (short). Our exit conditions remain unchanged (fixed ATR stop and trailing Donchian Trailing stop)
🔷 Position Sizing:
If ‘‘Fixed Risk From Initial Balance’’ is toggled true this means we risk a fixed percentage of our initial balance, if false we risk a fixed percentage of our equity (current balance).
Note we also employ a volatility adjusted position sizing formula, the turtle training method which is defined as follows.
Turtle position size = (1/ r * ATR * DV) * C
Where,
r = risk factor coefficient (default is 20)
ATR(j) = risk proxy, over j times steps
DV = Dollar Volatility, where DV = (1/Asset Price) * Capital at Risk
🔷 Risk Management:
Correct money management means we can limit risk and increase reward (theoretically). Here we employ
Max loss and gain per day
Max loss per trade
Max number of consecutive losing trades until trade skip
To read more see the tooltips (info circle).
🔷 Take Profit:
By defualt the script uses a Donchain Channel as a trailing stop and take profit, In addition to this the script defines a fixed ATR stop losses (by defualt, this covers cases where the DC range may be to wide making a fixed ATR stop usefull), ATR take profits however are defined but optional.
ATR SL and TP defined for all trades
🔷 Hurst Regime (Regime Filter):
The Hurst Exponent (H) aims to segment the market into three different states, Trending (H > 0.5), Random Geometric Brownian Motion (H = 0.5) and Mean Reverting / Contrarian (H < 0.5). In my interpretation this can be used as a trend filter that eliminates market noise.
We utilize the trending and mean reverting based states, as extra conditions required for valid trades for both strategy types respectively, in the process increasing our trade entry quality.
🔷 Example model Architecture:
Here is an example of one configuration of this strategy, combining all aspects discussed in this post.
Future Updates
- Automation integration (next update)
Trend Signals with TP & SL [UAlgo] StrategyThe "Trend Signals with TP & SL Strategy" is a trading strategy designed to capture trend continuation signals while incorporating sophisticated risk management techniques. This strategy is tailored for traders who wish to capitalize on trending market conditions with precise entry and exit points, automatically calculating Take Profit (TP) and Stop Loss (SL) levels based on either Average True Range (ATR) or percentage values. The strategy aims to enhance trade management by preventing multiple simultaneous positions and dynamically adapting to changing market conditions.
This strategy is highly configurable, allowing traders to adjust sensitivity, the ATR calculation method, and the cloud moving average length. Additionally, the strategy can display buy and sell signals directly on the chart, along with visual representation of entry points, stop losses, and take profits. It also features a cloud-based trend analysis using a MACD-driven color fill that indicates the strength and direction of the trend.
🔶 Key Features
Configurable Trend Continuation Signals:
Source Selection: The strategy uses the midpoint of the high-low range as the default source, but it is adjustable.
Sensitivity: The sensitivity of the trend signals can be adjusted using a multiplier, ranging from 0.5 to 5.
ATR Calculation: The strategy allows users to choose between two ATR calculation methods for better adaptability to different market conditions.
Cloud Moving Average: Traders can adjust the cloud moving average length, which is used in conjunction with MACD to provide a visual trend indication.
Take Profit & Stop Loss Management:
ATR-Based or Percent-Based: The strategy offers flexibility in setting TP and SL levels, allowing traders to choose between ATR-based multipliers or fixed percentage values.
Dynamic Adjustment: TP and SL levels are dynamically adjusted according to the selected method, ensuring trades are managed based on real-time market conditions.
Prevention of Multiple Positions:
Single Position Control: To reduce risk and enhance strategy reliability, the strategy includes an option to prevent multiple positions from being opened simultaneously.
Visual Trade Indicators:
Buy/Sell Signals: Clearly displays buy and sell signals on the chart for easy interpretation.
Entry, SL, and TP Lines: Draws lines for entry price, stop loss, and take profit directly on the chart, helping traders to monitor trades visually.
Trend Cloud: A color-filled cloud based on MACD and the cloud moving average provides a visual cue of the trend’s direction and strength.
Performance Summary Table:
In-Chart Statistics: A table in the top right of the chart displays key performance metrics, including total trades, wins, losses, and win rate percentage, offering a quick overview of the strategy’s effectiveness.
🔶 Interpreting the Indicator
Trend Signals: The strategy identifies trend continuation signals based on price action relative to an ATR-based threshold. A buy signal is generated when the price crosses above a key level, indicating an uptrend. Conversely, a sell signal occurs when the price crosses below a level, signaling a downtrend.
Cloud Visualization: The cloud, derived from MACD and moving averages, changes color to reflect the current trend. A positive cloud in aqua suggests an uptrend, while a red cloud indicates a downtrend. The transparency of the cloud offers further nuance, with more solid colors denoting stronger trends.
Entry and Exit Management: Once a trend signal is generated, the strategy automatically sets TP and SL levels based on your chosen method (ATR or percentage). The stop loss and take profit lines will appear on the chart, showing where the strategy will exit the trade. If the price reaches either the SL or TP, the trade is closed, and the respective line is deleted from the chart.
Performance Metrics: The strategy’s performance is tracked in real-time with an in-chart table. This table provides essential information about the number of trades executed, the win/loss ratio, and the overall win rate. This information helps traders assess the strategy's effectiveness and make necessary adjustments.
This strategy is designed for those who seek to engage with trending markets, offering robust tools for entry, exit, and overall trade management. By understanding and leveraging these features, traders can potentially improve their trading outcomes and risk management.
🔷 Related Script
🔶 Disclaimer
Use with Caution: This indicator is provided for educational and informational purposes only and should not be considered as financial advice. Users should exercise caution and perform their own analysis before making trading decisions based on the indicator's signals.
Not Financial Advice: The information provided by this indicator does not constitute financial advice, and the creator (UAlgo) shall not be held responsible for any trading losses incurred as a result of using this indicator.
Backtesting Recommended: Traders are encouraged to backtest the indicator thoroughly on historical data before using it in live trading to assess its performance and suitability for their trading strategies.
Risk Management: Trading involves inherent risks, and users should implement proper risk management strategies, including but not limited to stop-loss orders and position sizing, to mitigate potential losses.
No Guarantees: The accuracy and reliability of the indicator's signals cannot be guaranteed, as they are based on historical price data and past performance may not be indicative of future results.
Double Bottom and Top Hunter### Türkçe Açıklama:
Bu strateji, grafikte ikili dip ve ikili tepe formasyonlarını tespit ederek otomatik alım ve satım işlemleri gerçekleştirir. İkili dip, fiyatın belirli bir dönem içinde iki kez en düşük seviyeye ulaşması ile oluşur ve bu durumda strateji long (alım) işlemi açar. İkili tepe ise fiyatın belirli bir dönem içinde iki kez en yüksek seviyeye ulaşması ile oluşur ve bu durumda strateji short (satış) işlemi açar.
- **Dönem Uzunluğu ve Geriye Dönük Kontrol:** Strateji, varsayılan olarak 100 periyotluk bir zaman dilimini temel alır ve bu süre boyunca en düşük ve en yüksek fiyat seviyelerini belirler. Geriye dönük kontrol süresi de 100 periyot olarak ayarlanmıştır.
- **İşlem Açma Koşulları:** İkili dip tespit edildiğinde long pozisyon, ikili tepe tespit edildiğinde short pozisyon açılır.
- **İşlem Kapatma Koşulları:** İkili dipte, en yüksek seviyeye (HH) ulaşıldıktan sonra fiyatın daha düşük bir seviye (LL) yapması durumunda pozisyon kapanır. İkili tepede ise tam tersi bir durumda, pozisyon kapanır.
- **Zigzag Çizimi:** İkili dip ve tepe formasyonları, grafik üzerinde yeşil (dipler) ve kırmızı (tepeler) zigzag çizgileri ile gösterilir.
Bu strateji, özellikle 1, 3 ve 5 dakikalık kısa zaman dilimlerinde yüksek başarı oranına sahiptir ve piyasadaki kısa vadeli trend dönüşlerini yakalamada etkili bir araçtır.
### English Explanation:
This strategy automatically executes buy and sell orders by detecting double bottom and double top formations on the chart. A double bottom occurs when the price reaches a low level twice within a specific period, prompting the strategy to open a long (buy) position. Conversely, a double top forms when the price reaches a high level twice, leading the strategy to open a short (sell) position.
- **Period Length and Lookback Control:** By default, the strategy is based on a 100-period length, during which it identifies the lowest and highest price levels. The lookback control period is also set to 100 periods.
- **Entry Conditions:** A long position is opened when a double bottom is detected, while a short position is opened when a double top is identified.
- **Exit Conditions:** In the case of a double bottom, the position is closed after the price reaches a higher high (HH) and then makes a lower low (LL). For a double top, the opposite occurs before closing the position.
- **Zigzag Plotting:** The double bottom and top formations are visually represented on the chart with green (bottoms) and red (tops) zigzag lines.
This strategy is particularly successful in short timeframes such as 1, 3, and 5 minutes and is an effective tool for capturing short-term trend reversals in the market.
Fibonacci-Only StrategyFibonacci-Only Strategy
This script is a custom trading strategy designed for traders who leverage Fibonacci retracement levels to identify potential trade entries and exits. The strategy is versatile, allowing users to trade across multiple timeframes, with built-in options for dynamic stop loss, trailing stops, and take profit levels.
Key Features:
Custom Fibonacci Levels:
This strategy calculates three specific Fibonacci retracement levels: 19%, 82.56%, and the reverse 19% level. These levels are used to identify potential areas of support and resistance where price reversals or breaks might occur.
The Fibonacci levels are calculated based on the highest and lowest prices within a 100-bar period, making them dynamic and responsive to recent market conditions.
Dynamic Entry Conditions:
Touch Entry: The script enters long or short positions when the price touches specific Fibonacci levels and confirms the move with a bullish (for long) or bearish (for short) candle.
Break Entry (Optional): If the "Use Break Strategy" option is enabled, the script can also enter positions when the price breaks through Fibonacci levels, providing more aggressive entry opportunities.
Stop Loss Management:
The script offers flexible stop loss settings. Users can choose between a fixed percentage stop loss or an ATR-based stop loss, which adjusts based on market volatility.
The ATR (Average True Range) stop loss is multiplied by a user-defined factor, allowing for tailored risk management based on market conditions.
Trailing Stop Mechanism:
The script includes an optional trailing stop feature, which adjusts the stop loss level as the market moves in favor of the trade. This helps lock in profits while allowing the trade to run if the trend continues.
The trailing stop is calculated as a percentage of the difference between the entry price and the current market price.
Multiple Take Profit Levels:
The strategy calculates seven take profit levels, each at incremental percentages above (for long trades) or below (for short trades) the entry price. This allows for gradual profit-taking as the market moves in the trade's favor.
Each take profit level can be customized in terms of the percentage of the position to be closed, providing precise control over exit strategies.
Strategy Backtesting and Results:
Realistic Backtesting:
The script has been backtested with realistic account sizes, commission rates, and slippage settings to ensure that the results are applicable to actual trading scenarios.
The backtesting covers various timeframes and markets to ensure the strategy's robustness across different trading environments.
Default Settings:
The script is published with default settings that have been optimized for general use. These settings include a 15-minute timeframe, a 1.0% stop loss, a 2.0 ATR multiplier for stop loss, and a 1.5% trailing stop.
Users can adjust these settings to better fit their specific trading style or the market they are trading.
How It Works:
Long Entry Conditions:
The strategy enters a long position when the price touches the 19% Fibonacci level (from high to low) or the reverse 19% level (from low to high) and confirms the move with a bullish candle.
If the "Use Break Strategy" option is enabled, the script will also enter a long position when the price breaks below the 19% Fibonacci level and then moves back up, confirming the break with a bullish candle.
Short Entry Conditions:
The strategy enters a short position when the price touches the 82.56% Fibonacci level and confirms the move with a bearish candle.
If the "Use Break Strategy" option is enabled, the script will also enter a short position when the price breaks above the 82.56% Fibonacci level and then moves back down, confirming the break with a bearish candle.
Stop Loss and Take Profit Logic:
The stop loss for each trade is calculated based on the selected method (fixed percentage or ATR-based). The strategy then manages the trade by either trailing the stop or taking profit at predefined levels.
The take profit levels are set at increments of 0.5% above or below the entry price, depending on whether the position is long or short. The script gradually exits the trade as these levels are hit, securing profits while minimizing risk.
Usage:
For Fibonacci Traders:
This script is ideal for traders who rely on Fibonacci retracement levels to find potential trade entries and exits. The script automates the process, allowing traders to focus on market analysis and decision-making.
For Trend and Swing Traders:
The strategy's flexibility in handling both touch and break entries makes it suitable for trend-following and swing trading strategies. The multiple take profit levels allow traders to capture profits in trending markets while managing risk.
Important Notes:
Originality: This script uniquely combines Fibonacci retracement levels with dynamic stop loss management and multiple take profit levels. It is not just a combination of existing indicators but a thoughtful integration designed to enhance trading performance.
Disclaimer: Trading involves risk, and it is crucial to test this script in a demo account or through backtesting before applying it to live trading. Users should ensure that the settings align with their individual risk tolerance and trading strategy.
MACD with 1D Stochastic Confirmation Reversal StrategyOverview
The MACD with 1D Stochastic Confirmation Reversal Strategy utilizes MACD indicator in conjunction with 1 day timeframe Stochastic indicators to obtain the high probability short-term trend reversal signals. The main idea is to wait until MACD line crosses up it’s signal line, at the same time Stochastic indicator on 1D time frame shall show the uptrend (will be discussed in methodology) and not to be in the oversold territory. Strategy works on time frames from 30 min to 4 hours and opens only long trades.
Unique Features
Dynamic stop-loss system: Instead of fixed stop-loss level strategy utilizes average true range (ATR) multiplied by user given number subtracted from the position entry price as a dynamic stop loss level.
Configurable Trading Periods: Users can tailor the strategy to specific market windows, adapting to different market conditions.
Higher time frame confirmation: Strategy utilizes 1D Stochastic to establish the major trend and confirm the local reversals with the higher probability.
Trailing take profit level: After reaching the trailing profit activation level scrip activate the trailing of long trade using EMA. More information in methodology.
Methodology
The strategy opens long trade when the following price met the conditions:
MACD line of MACD indicator shall cross over the signal line of MACD indicator.
1D time frame Stochastic’s K line shall be above the D line.
1D time frame Stochastic’s K line value shall be below 80 (not overbought)
When long trade is executed, strategy set the stop-loss level at the price ATR multiplied by user-given value below the entry price. This level is recalculated on every next candle close, adjusting to the current market volatility.
At the same time strategy set up the trailing stop validation level. When the price crosses the level equals entry price plus ATR multiplied by user-given value script starts to trail the price with EMA. If price closes below EMA long trade is closed. When the trailing starts, script prints the label “Trailing Activated”.
Strategy settings
In the inputs window user can setup the following strategy settings:
ATR Stop Loss (by default = 3.25, value multiplied by ATR to be subtracted from position entry price to setup stop loss)
ATR Trailing Profit Activation Level (by default = 4.25, value multiplied by ATR to be added to position entry price to setup trailing profit activation level)
Trailing EMA Length (by default = 20, period for EMA, when price reached trailing profit activation level EMA will stop out of position if price closes below it)
User can choose the optimal parameters during backtesting on certain price chart, in our example we use default settings.
Justification of Methodology
This strategy leverages 2 time frames analysis to have the high probability reversal setups on lower time frame in the direction of the 1D time frame trend. That’s why it’s recommended to use this strategy on 30 min – 4 hours time frames.
To have an approximation of 1D time frame trend strategy utilizes classical Stochastic indicator. The Stochastic Indicator is a momentum oscillator that compares a security's closing price to its price range over a specific period. It's used to identify overbought and oversold conditions. The indicator ranges from 0 to 100, with readings above 80 indicating overbought conditions and readings below 20 indicating oversold conditions.
It consists of two lines:
%K: The main line, calculated using the formula (CurrentClose−LowestLow)/(HighestHigh−LowestLow)×100 . Highest and lowest price taken for 14 periods.
%D: A smoothed moving average of %K, often used as a signal line.
Strategy logic assumes that on 1D time frame it’s uptrend in %K line is above the %D line. Moreover, we can consider long trade only in %K line is below 80. It means that in overbought state the long trade will not be opened due to higher probability of pullback or even major trend reversal. If these conditions are met we are going to our working (lower) time frame.
On the chosen time frame, we remind you that for correct work of this strategy you shall use 30min – 4h time frames, MACD line shall cross over it’s signal line. The MACD (Moving Average Convergence Divergence) is a popular momentum and trend-following indicator used in technical analysis. It helps traders identify changes in the strength, direction, momentum, and duration of a trend in a stock's price.
The MACD consists of three components:
MACD Line: This is the difference between a short-term Exponential Moving Average (EMA) and a long-term EMA, typically calculated as: MACD Line=12-period EMA−26-period
Signal Line: This is a 9-period EMA of the MACD Line, which helps to identify buy or sell signals. When the MACD Line crosses above the Signal Line, it can be a bullish signal (suggesting a buy); when it crosses below, it can be a bearish signal (suggesting a sell).
Histogram: The histogram shows the difference between the MACD Line and the Signal Line, visually representing the momentum of the trend. Positive histogram values indicate increasing bullish momentum, while negative values indicate increasing bearish momentum.
In our script we are interested in only MACD and signal lines. When MACD line crosses signal line there is a high chance that short-term trend reversed to the upside. We use this strategy on 45 min time frame.
ATR is used to adjust the strategy risk management to the current market volatility. If volatility is low, we don’t need the large stop loss to understand the there is a high probability that we made a mistake opening the trade. User can setup the settings ATR Stop Loss and ATR Trailing Profit Activation Level to realize his own risk to reward preferences, but the unique feature of a strategy is that after reaching trailing profit activation level strategy is trying to follow the trend until it is likely to be finished instead of using fixed risk management settings. It allows sometimes to be involved in the large movements.
Backtest Results
Operating window: Date range of backtests is 2023.01.01 - 2024.08.01. It is chosen to let the strategy to close all opened positions.
Commission and Slippage: Includes a standard Binance commission of 0.1% and accounts for possible slippage over 5 ticks.
Initial capital: 10000 USDT
Percent of capital used in every trade: 30%
Maximum Single Position Loss: -4.79%
Maximum Single Profit: +20.14%
Net Profit: +2361.33 USDT (+44.72%)
Total Trades: 123 (44.72% win rate)
Profit Factor: 1.623
Maximum Accumulated Loss: 695.80 USDT (-5.48%)
Average Profit per Trade: 19.20 USDT (+0.59%)
Average Trade Duration: 30 hours
These results are obtained with realistic parameters representing trading conditions observed at major exchanges such as Binance and with realistic trading portfolio usage parameters.
How to Use
Add the script to favorites for easy access.
Apply to the desired timeframe between 30 min and 4 hours and chart (optimal performance observed on 45 min BTC/USDT).
Configure settings using the dropdown choice list in the built-in menu.
Set up alerts to automate strategy positions through web hook with the text: {{strategy.order.alert_message}}
Disclaimer:
Educational and informational tool reflecting Skyrex commitment to informed trading. Past performance does not guarantee future results. Test strategies in a simulated environment before live implementation
Double CCI Confirmed Hull Moving Average Reversal StrategyOverview
The Double CCI Confirmed Hull Moving Average Strategy utilizes hull moving average (HMA) in conjunction with two commodity channel index (CCI) indicators: the slow and fast to increase the probability of entering when the short and mid-term uptrend confirmed. The main idea is to wait until the price breaks the HMA while both CCI are showing that the uptrend has likely been already started. Moreover, strategy uses exponential moving average (EMA) to trail the price when it reaches the specific level. The strategy opens only long trades.
Unique Features
Dynamic stop-loss system: Instead of fixed stop-loss level strategy utilizes average true range (ATR) multiplied by user given number subtracted from the position entry price as a dynamic stop loss level.
Configurable Trading Periods: Users can tailor the strategy to specific market windows, adapting to different market conditions.
Double trade setup confirmation: Strategy utilizes two different period CCI indicators to confirm the breakouts of HMA.
Trailing take profit level: After reaching the trailing profit activation level scrip activate the trailing of long trade using EMA. More information in methodology.
Methodology
The strategy opens long trade when the following price met the conditions:
Short-term period CCI indicator shall be above 0.
Long-term period CCI indicator shall be above 0.
Price shall cross the HMA and candle close above it with the same candle
When long trade is executed, strategy set the stop-loss level at the price ATR multiplied by user-given value below the entry price. This level is recalculated on every next candle close, adjusting to the current market volatility.
At the same time strategy set up the trailing stop validation level. When the price crosses the level equals entry price plus ATR multiplied by user-given value script starts to trail the price with EMA. If price closes below EMA long trade is closed. When the trailing starts, script prints the label “Trailing Activated”.
Strategy settings
In the inputs window user can setup the following strategy settings:
ATR Stop Loss (by default = 1.75)
ATR Trailing Profit Activation Level (by default = 2.25)
CCI Fast Length (by default = 25, used for calculation short term period CCI
CCI Slow Length (by default = 50, used for calculation long term period CCI)
Hull MA Length (by default = 34, period of HMA, which shall be broken to open trade)
Trailing EMA Length (by default = 20)
User can choose the optimal parameters during backtesting on certain price chart.
Justification of Methodology
Before understanding why this particular combination of indicator has been chosen let's briefly explain what is CCI and HMA.
The Commodity Channel Index (CCI) is a momentum-based technical indicator used in trading to measure a security's price relative to its average price over a given period. Developed by Donald Lambert in 1980, the CCI is primarily used to identify cyclical trends in a security, helping traders to spot potential buying or selling opportunities.
The CCI formula is:
CCI = (Typical Price − SMA) / (0.015 × Mean Deviation)
Typical Price (TP): This is calculated as the average of the high, low, and closing prices for the period.
Simple Moving Average (SMA): This is the average of the Typical Prices over a specific number of periods.
Mean Deviation: This is the average of the absolute differences between the Typical Price and the SMA.
The result is a value that typically fluctuates between +100 and -100, though it is not bounded and can go higher or lower depending on the price movement.
The Hull Moving Average (HMA) is a type of moving average that was developed by Alan Hull to improve upon the traditional moving averages by reducing lag while maintaining smoothness. The goal of the HMA is to create an indicator that is both quick to respond to price changes and less prone to whipsaws (false signals).
How the Hull Moving Average is Calculated?
The Hull Moving Average is calculated using the following steps:
Weighted Moving Average (WMA): The HMA starts by calculating the Weighted Moving Average (WMA) of the price data over a period square root of n (sqrt(n))
Speed Adjustment: A WMA is then calculated for half of the period n/2, and this is multiplied by 2 to give more weight to recent prices.
Lag Reduction: The WMA of the full period n is subtracted from the doubled n/2 WMA.
Final Smoothing: To smooth the result and reduce noise, a WMA is calculated for the square root of the period n.
The formula can be represented as:
HMA(n) = WMA(WMA(n/2) × 2 − WMA(n), sqrt(n))
The Weighted Moving Average (WMA) is a type of moving average that gives more weight to recent data points, making it more responsive to recent price changes than a Simple Moving Average (SMA). In a WMA, each data point within the selected period is multiplied by a weight, with the most recent data receiving the highest weight. The sum of these weighted values is then divided by the sum of the weights to produce the WMA.
This strategy leverages HMA of user given period as a critical level which shall be broken to say that probability of trend change to the upside increased. HMA reacts faster than EMA or SMA to the price change, that’s why it increases chances to enter new trade earlier. Long-term period CCI helps to have an approximation of mid-term trend. If it’s above 0 the probability of uptrend increases. Short-period CCI allows to have an approximation of short-term trend reversal from down to uptrend. This approach increases chances to have a long trade setup in the direction of mid-term trend when the short-term trend starts to reverse.
ATR is used to adjust the strategy risk management to the current market volatility. If volatility is low, we don’t need the large stop loss to understand the there is a high probability that we made a mistake opening the trade. User can setup the settings ATR Stop Loss and ATR Trailing Profit Activation Level to realize his own risk to reward preferences, but the unique feature of a strategy is that after reaching trailing profit activation level strategy is trying to follow the trend until it is likely to be finished instead of using fixed risk management settings. It allows sometimes to be involved in the large movements. It’s also important to make a note, that script uses HMA to enter the trade, but for trailing it leverages EMA. It’s used because EMA has no such fast reaction to price move which increases probability not to be stopped out from any significant uptrend move.
Backtest Results
Operating window: Date range of backtests is 2022.07.01 - 2024.08.01. It is chosen to let the strategy to close all opened positions.
Commission and Slippage: Includes a standard Binance commission of 0.1% and accounts for possible slippage over 5 ticks.
Initial capital: 10000 USDT
Percent of capital used in every trade: 100%
Maximum Single Position Loss: -4.67%
Maximum Single Profit: +19.66%
Net Profit: +14897.94 USDT (+148.98%)
Total Trades: 104 (36.54% win rate)
Profit Factor: 2.312
Maximum Accumulated Loss: 1302.66 USDT (-9.58%)
Average Profit per Trade: 143.25 USDT (+0.96%)
Average Trade Duration: 34 hours
These results are obtained with realistic parameters representing trading conditions observed at major exchanges such as Binance and with realistic trading portfolio usage parameters.
How to Use
Add the script to favorites for easy access.
Apply to the desired timeframe and chart (optimal performance observed on 2h BTC/USDT).
Configure settings using the dropdown choice list in the built-in menu.
Set up alerts to automate strategy positions through web hook with the text: {{strategy.order.alert_message}}
Disclaimer:
Educational and informational tool reflecting Skyrex commitment to informed trading. Past performance does not guarantee future results. Test strategies in a simulated environment before live implementation
Self Optimizing RSI and Self Adaptive TP/SL [Starbots]Self Optimizing RSI and Self Adaptive TP/SL Strategy. (non-repainting)
This script continuously backtests 20 different combinations of RSI Buy conditions across 5 different Take Profit/Stop Loss combinations. In total, it tests 100 variants on every bar close and records the Net Profit gained for each combination. The strategy then selects and uses the best-performing combination of settings currently available for you to trade.
---------------------------------------------------------------------------------------------------------
The Relative Strength Index (RSI), developed by J. Welles Wilder, is a momentum oscillator that measures the speed and change of price movements. The RSI oscillates between zero and 100. Traditionally the RSI is considered overbought when above 70 and oversold when below 30. Signals can be generated by looking for divergences and failure swings. RSI can also be used to identify the general trend.
To improve our results we are calculating Multiple Length RSI - Average RSI based on the multiple periods. You can use just 1 Length or Multiple.
Set Inputs to Min=14, Max=14 if you want to use just 1 period.
= RSI(14)
3 RSI Lengths example (12,13 and 14):
Min=12, Max=14
(12+13+14) / 3 = avg. RSI
-----------------------------------------------------------------------------------------------------------
Backtester - Optimizer Explained:
The backtester runs numerous backtests in the background to optimize trading strategies. Here’s how it works:
Default Inputs (Combinations of TP/SL)
TP 1%, SL4%
TP 2%, SL4%
TP 3%, SL4%
TP 2%, SL5%
TP 4.5%, SL10%
Default Inputs (RSI Crossover Buys) :
18 ,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,45,55, 69
_______________________________________________________
Backtest RSI Crossover 18:
TP1%, SL4% => Save net profit
TP2%, SL4% => Save net profit
TP3%, SL4% => Save net profit
TP2%, SL5% => Save net profit
TP4.5%, SL10% => Save net profit
,...
,...
Backtest RSI Crossover 69:
TP1%, SL4% => Save net profit
TP2%, SL4% => Save net profit
TP3%, SL4% => Save net profit
TP2%, SL5% => Save net profit
TP4.5%, SL10% => Save net profit
Self Optimizing Buy Condition and Self Optimizing Take Profit - Stop Los
This process involves testing various combinations of RSI crossover values with different Take Profit (TP) and Stop Loss (SL) percentages. The net profit for each combination is saved, allowing the optimizer to select the best-performing settings for trading.
It recalculates on every bar close. If one combination starts performing better than others—achieving a higher net profit gain (essentially like running 100 backtests with different settings in the background)—the strategy switches to that combination of TP/SL and Buy condition. It continues trading with the new settings until another parameter starts performing better and the strategy switches to that setting.
________________________________________________________________________
If you wish to use it as INDICATOR - turn on 'Recalculate - On every tick' in Properties tab to have this script updating constantly and use it as a normal Indicator tool for manual trading.
Other functions:
Set the %fee for optimizing engine. If you set this % higher, you also punish small average trades and make the strategy prefer larger avg. trades, giving you better chances to make your strategy profitable.
Trade with trend and optimize the strategy only when the market is uptrending with EMA/HMA
Use Moving Average of avg.RSI and smooth the values for indicator even more. (Yes strategy is self optimizing RSI or avg.RSI or RSI-MA, you can select all sorts of this indicator for optimizing)
All trading alerts are working and functional, if you want to automate the strategy
This script is simple to use for any trader as it saves a lot of time for searching good parameters on your own. It's self-optimizing and adjusting to the markets on the go.
zavaUnni-bitcoin signals(1day)
📌 This strategy predicts price movements based on trading volume and enters positions accordingly. It calculates the expected price increase based on bullish volume and the expected price decrease based on bearish volume to determine the direction of the position.
Top predicted price based on declining bullish volume: top_ifpricebull
Bottom predicted price based on declining bearish volume: top_ifpricebear
Top predicted price based on increasing bullish volume: bot_ifpricebull
Bottom predicted price based on increasing bearish volume: bot_ifpricebear
Using these four values, the strategy calculates the final maxprice and minprice based on volume. If the price settles above the max value, it indicates an upward trend; if it settles below the min value, it indicates a downward trend.
📌 The indicator does not solely rely on the maxprice and minprice conditions. It incorporates complex and sophisticated analysis by considering average volume and candle size.
During a decline, if the average volume and spread of bullish candles exceed those of bearish candles and the price settles above the max value, a long position is entered.
During a rise, if the average volume and spread of bearish candles exceed those of bullish candles and the price settles below the min value, a short position is entered.
Even if the above conditions are met, if the buying pressure significantly outweighs the selling pressure, the position will be closed, but a reverse position will not be entered.
Reviewing historical data shows that while there are instances where the position switches from long to short immediately, there are also cases where the position is closed and re-entered after a few candles.
📌 Trading volume is one of the most traditional yet essential indicators, accurately reflecting price direction. This strategy, which simultaneously predicts fundamental trading volume and price changes, consistently achieves a profit factor above 3.
Characteristics and Historical Data of the Strategy
🔴 Short position entry: April 11, 2022
🟢 Long position entry after closing short: January 11, 2023
⚫ Short position holding period: 270 days
🟢 Long position entry: October 9, 2020
🔵 Long position exit: November 30, 2019
⚫ Long position holding period: 52 days
🟢 Long position entry: November 30, 2019
🔵 Long position exit: February 22, 2021
⚫ Long position holding period: 84 days
Settings Explanation
🛠️ In the input, you can choose between spot and futures. Buy and sell signals are generated in spot trading, while long and short signals are generated in futures trading.
🌈 You can configure the screen view.
Fibonacci Trend
Falling Fibonacci levels from the top: 382 and 618 levels (Red lines)
Rising Fibonacci levels from the bottom: 382 and 618 levels (Green lines)
When the price stays within the 382 and 618 levels of the falling Fibonacci, the background turns red; when it stays within the 382 and 618 levels of the rising Fibonacci, the background turns green.
Real-time Volume Strength of Bullish and Bearish Candles
Red arrow: Appears when the strength of bearish candles increases
Green arrow: Appears when the strength of bullish candles increases
Cumulative Volume of Bullish and Bearish Candles during the Trend
Cumulative data of falling bullish and bearish candles from the top
Cumulative data of rising bullish and bearish candles from the bottom
Profit Table
Provides annual and monthly profit tables.
Setting Options
You can change the options in the attributes to test different configurations.
📌 Trading Data
Although Binance data starts from 2017, limiting the number of trades to 60 as of July 2024, this does not undermine the validity of the strategy. Binance provides reliable volume data, which is crucial for evaluating the strategy's performance. In contrast, exchanges like Bitstamp may have longer trading histories but insufficient volume to properly assess the strategy's actual performance. A volume-based strategy cannot be reliably tested on an exchange with low trading volume. Therefore, despite the limited number of trades on Binance, its reliable volume data justifies its use for this strategy.
► Backtesting Details:
Timeframe: 1D / Bitcoin / TetherUS
Initial Balance: $50,000 (Enter the initial capital you will invest)
Order Size: 10% (Enter the percentage of your account balance you will trade)
Commission: 0.04% (Enter the trading commission)
Slippage: 10 ticks (Enter the slippage you want to test)
When using the strategy:
📢 Timeframe: While the strategy performs well on timeframes lower than daily, it is particularly profitable on the daily timeframe.
📢 Exchange: It is recommended to use Binance due to its reliable volume data.
📢 This strategy is suitable for traders who have the patience to hold positions for extended periods, as it calculates the size of bullish and bearish candles carefully and does not change positions easily.
📢 Spot trading is recommended over futures, and if using futures, leverage should be limited to a maximum of 2x.
TSI w SuperTrend decision - Strategy [presentTrading]This strategy aims to improve upon the performance of Traidngview's newly published "Trend Strength Index" indicator by incorporating the SuperTrend for better trade execution and risk management. Enjoy :)
█ Introduction and How it is Different
The "TSI with SuperTrend Decision - Strategy" combines the Trend Strength Index (TSI) with SuperTrend indicators to determine entry and exit points. Unlike traditional strategies that rely solely on one indicator, this method leverages the strengths of both TSI and SuperTrend to provide a more nuanced and adaptive trading strategy.
This dual approach allows for capturing trends more effectively, especially in volatile markets.
BTCUSD 8h LS Performance
█ Strategy, How it Works: Detailed Explanation
🔶 Trend Strength Index (TSI)
The TSI is a momentum oscillator that shows both the direction and strength of a trend. It is calculated by comparing the price movement with the bar index over a specified period. The formula for TSI is as follows:
```
TSI = (PC / |PC|)
where:
PC = Change in price over the period
```
In this strategy, TSI is calculated using the closing prices and a default period of 64 bars. The TSI values help identify overbought and oversold conditions, providing signals for potential market reversals.
🔶 SuperTrend Indicator
The SuperTrend is a trend-following indicator based on the average true range (ATR). It helps in identifying the direction of the market trend. The SuperTrend calculation involves:
```
SuperTrend = HLC3 ± (Factor * ATR)
where:
HLC3 = (High + Low + Close) / 3
Factor = User-defined multiplier
ATR = Average True Range over a period
```
The SuperTrend settings in this strategy include a length of 10 bars and a factor of 3.0.
Last Bull Cycle of BTC
🔶 Entry and Exit Conditions
The strategy uses the TSI and SuperTrend together to determine entry and exit points:
- Long Entry: When the SuperTrend indicates a downward trend (st.d < 0) and the TSI is above the oversold level (-0.241).
- Long Exit: When the SuperTrend indicates an upward trend (st.d > 0) and the TSI is below the overbought level (0.241).
- Short Entry: When the SuperTrend indicates an upward trend (st.d > 0) and the TSI is below the overbought level (0.241).
- Short Exit: When the SuperTrend indicates a downward trend (st.d < 0) and the TSI is above the oversold level (-0.241).
█ Trade Direction
The strategy allows users to select the trade direction through the `tradeDirection` input. The options are:
- Both: Enables both long and short trades.
- Long: Enables only long trades.
- Short: Enables only short trades.
█ Default Settings
- TSI Length: 64
- SuperTrend Length: 10
- SuperTrend Factor: 3.0
- Trade Direction: Both
- Take Profit (%): 30.0
- Stop Loss (%): 20.0
Impact of Default Settings
- TSI Length: A longer TSI period smooths out noise but may lag in identifying trends. A shorter period is more responsive but can generate false signals.
- SuperTrend Length: A shorter length provides quicker signals but can be prone to whipsaws. A longer length is more reliable but may delay entries and exits.
- SuperTrend Factor: A higher factor increases the distance of the SuperTrend from the price, reducing sensitivity to minor price fluctuations.
- Trade Direction: Allows flexibility in trading strategies by enabling both long and short trades based on market conditions.
- Take Profit and Stop Loss: These settings manage risk by automatically closing trades at predefined profit or loss levels. Higher percentages provide larger potential gains but also higher risk.
MA MACD BB BackTesterOverview:
This Pine Script™ code provides a comprehensive backtesting tool that combines Moving Average (MA), Moving Average Convergence Divergence (MACD), and Bollinger Bands (BB). It is designed to help traders analyze market trends and make informed trading decisions by testing various strategies over historical data.
Key Features:
1. Customizable Indicators:
Moving Average (MA): Smooths out price data for clearer trend direction.
MACD: Measures trend momentum through MACD Line, Signal Line, and Histogram.
Bollinger Bands (BB): Identifies overbought or oversold conditions with upper and lower bands.
2. Flexible Trading Direction: Choose between long or short positions to adapt to different market conditions.
3. Risk Management: Efficiently allocate your capital with customizable position sizes.
4. Signal Generation:
Buy Signals: Triggered by crossovers for MACD, MA, and BB.
Sell Signals: Triggered by crossunders for MACD, MA, and BB.
5. Automated Trading: Automatically enter and exit trades based on signal conditions and strategy parameters.
How It Works:
1. Indicator Selection: Select your preferred indicator (MA, MACD, BB) and trading direction (Long/Short).
2. Risk Management Configuration: Set the percentage of capital to allocate per position to manage risk effectively.
3.Signal Detection: The algorithm identifies and plots buy/sell signals directly on the chart based on the chosen indicator.
4. Trade Execution: The strategy automatically enters and exits trades based on signal conditions and configured strategy parameters.
Use Cases:
- Backtesting: Evaluate the effectiveness of trading strategies using historical data to understand potential performance.
- Strategy Development: Customize and expand the strategy to incorporate additional indicators or conditions to fit specific trading styles.
ADDONS That Affect Strategy:
1. Indicator Parameters:
Adjustments to the settings of MACD (e.g., fast length, slow length), MA (e.g., length), and BB (e.g., length, multiplier) will directly impact the detection of signals and the strategy's performance.
2. Trading Direction:
Changing the trading direction (Long/Short) will alter the entry and exit conditions based on the detected signals.
3. Risk Management Settings:
Modifying the position size percentage affects capital allocation and overall risk exposure per trade.
ADDONS That Do Not Affect Strategy:
1. Visual Customizations:
Changes to the color, shape, and style of the plotted lines and signals do not impact the core functionality of the strategy but enhance visual clarity.
2. Text and Labels:
Modifying text labels for the signals (such as renaming "Buy MACD" to "MACD Buy Signal") is purely cosmetic and does not influence the strategy’s logic or outcomes.
Notes:
- Customization: The indicator is highly customizable to fit various trading styles and market conditions.
- Risk Management: Adjust position sizes and risk parameters according to your risk tolerance and account size.
- Optimization: Regularly backtest and optimize parameters to adapt to changing market dynamics for better performance.
Getting Started:
-Add the script to your chart.
-Adjust the input parameters to suit your analysis preferences.
-Observe the marked buy and sell signals on your chart to make informed trading decisions.
Universal Algo [Coff3eG]Universal Algo By G
Overview:
Universal Algo By G is a comprehensive LONG-ONLY trading strategy specifically designed for medium to long-term use in cryptocurrency markets, particularly Bitcoin. This algorithm can be manually adjusted to fit the volatility of specific coins, ensuring the best possible results. While it does not generate a large number of trades due to the nature of bull and bear market cycles, it has been rigorously backtested and forward-tested to ensure the strategy is not overfitted.
Core Features:
Integrated Systems: Universal Algo is built around five core systems, each contributing unique analytical perspectives to enhance trade signal reliability. These systems are designed to identify clear trend opportunities for significant gains while also employing logic to navigate through ranging markets effectively.
Optional Ranging Market Filter: Helps filter out noise, potentially enhancing signal clarity.
Market State Detection: Identifies four distinct market states:
Trending
Ranging
Danger (Possible top)
Possible Bottom
Global Liquidity Indicator (GLI) Integration: Leverages GLI values to identify positive liquidity trends.
Volatility Bands: Provides insights into market volatility.
Top and Bottom Detection: Shows possible bottoms with green backgrounds and red backgrounds for possible top detection.
The Market State Detection, GLI, Volatility Bands, and Top and Bottom Detection feature all serve as an expectation management feature.
Additional Features:
Optional Metrics Table: Displays strategy metrics and statistics, providing detailed insights into performance.
Customization Options: The script offers a range of user inputs, allowing for customization of the backtesting starting date, the decision to display the strategy equity curve, among other settings. These inputs cater to diverse trading needs and preferences, offering users control over their strategy implementation.
Operational Parameters:
Customizable Inputs: Users can adjust thresholds to match the coin's volatility, enhancing strategy performance.
Transparency and Logic Insight: While specific calculation details and proprietary indicators are integral to maintaining the uniqueness of Universal Algo, the strategy is grounded on well-established financial analysis techniques. These include momentum analysis, volatility assessments, and adaptive thresholding, among others, to formulate its trade signals. Notably, no single indicator is used in isolation; each indicator is combined with another to enhance signal accuracy and robustness. Some of the indicators include customized versions of the TEMA, Supertrend, Augmented Dickey-Fuller (ADF), and Weekly Positive Directional Movement Index (WPDM), all integrated together to create a cohesive and effective trading strategy.
System Operation:
Universal Algo works by taking the average score of the five core systems used for the signals. Three of these systems have been lengthened out to function as longer-term systems, while the remaining two operate at a slightly faster speed. This combination and averaging of systems help to balance the overall strategy, ensuring it maintains the right amount of speed to remain effective for medium to long-term use with minimal noise. The average score is then compared against customizable thresholds. The strategy will go long if the average score is above the threshold and short if it is below the threshold. This averaging mechanism helps to smooth out individual system anomalies and provides a more robust signal for trading decisions.
Originality and Usefulness:
Universal Algo is an original strategy that combines multiple proprietary and customized indicators to deliver robust trading signals. The strategy integrates various advanced indicators and methodologies, including:
System Indicator: Calculates a cumulative score based on recent price movements, aiding in trend detection.
Median For Loop: Utilizes percentile rank calculations of price data to gauge market direction.
Volatility Stop: A modified volatility-based stop-loss indicator that adjusts based on market conditions.
Supertrend: A customized supertrend indicator that uses percentile ranks and ATR for trend detection.
RSI and DEMA: Combines a modified RSI and DEMA for overbought/oversold conditions.
TEMA: Uses 3 different types of MA for trend detection and standard deviation bands for additional confirmation.
Detailed Explanation of Components and Their Interaction:
RSI (Relative Strength Index): Used to identify overbought and oversold conditions. In Universal Algo, RSI is combined with DEMA (Double Exponential Moving Average) to smooth the price data and provide clearer signals.
ATR (Average True Range): Used to measure market volatility. ATR is incorporated into the Volatility Stop and Supertrend indicators to adjust stop-loss levels and trend detection based on current market conditions.
DEMA (Double Exponential Moving Average): Provides a smoother price trend compared to traditional moving averages, reducing lag and making it easier to identify trend changes.
Modified TEMA (Triple Exponential Moving Average): Similar to DEMA but provides even greater smoothing, reducing lag further and enhancing trend detection accuracy.
Volatility Stop: Utilizes ATR to dynamically set stop-loss levels that adapt to changing market volatility. This helps in protecting profits and minimizing losses.
Customized Supertrend: Uses ATR and percentile ranks to determine trend direction and strength. This indicator helps in capturing major trends while filtering out market noise.
Median For Loop: Calculates percentile ranks of price data over a specified period to assess market direction. This helps in identifying potential reversals and trend continuations.
HMA (Hull Moving Average): A fast-acting moving average that reduces lag while maintaining smoothness. It helps in quickly identifying trend changes.
SMA (Simple Moving Average): A traditional moving average that provides baseline trend information. Combined with HMA and other indicators, it forms a comprehensive trend detection system.
Universal Algo offers a sophisticated blend of advanced indicators and proprietary logic that is not available in free or open-source scripts. Here are some reasons why it is worth paying for:
Customization and Flexibility: The strategy provides a high degree of customization, allowing users to adjust various parameters to suit their trading style and market conditions. This flexibility is often not available in free scripts.
Proprietary Indicators: The use of proprietary and customized indicators such as the TEMA, Supertrend, ADF, and WPDM ensures that the strategy is unique and not replicable by free or open-source scripts.
Integrated Systems: The strategy combines multiple systems and indicators to provide a more comprehensive and reliable trading signal. This integration helps to smooth out anomalies and reduces noise, providing clearer trading opportunities.
Rigorous Testing: Universal Algo has undergone extensive backtesting and forward-testing to ensure its robustness and reliability. The results demonstrate its ability to perform well under various market conditions, offering users confidence in its effectiveness.
Detailed Metrics and Analysis: The optional metrics table provides users with detailed insights into the strategy's performance, including metrics like equity, drawdown, Sharpe ratio, and more. This level of detail helps traders make informed decisions.
Value Addition: By providing a strategy that combines advanced indicators, customization options, and thorough testing, Universal Algo adds significant value to traders looking for a reliable and adaptable trading tool.
Realistic Trading Conditions:
Backtesting and Forward-Testing: Rigorous testing ensures performance and reliability, with a focus on prudent risk management. Default properties include an initial capital of $1000, 0 pyramiding, 20 slippage, 0.05% commission, and using 5% of equity for trades.
The strategy is designed and tested with a focus on achieving a balance between risk and reward, striving for robustness and reliability rather than unrealistic profitability promises. Realistic trading conditions are considered, including appropriate account size, commission, slippage, and sustainable risk levels per trade.
Concluding Thoughts:
Universal Algo By G is offered to the TradingView community as a robust tool for enhancing market analysis and trading strategies. It is designed with a commitment to quality, innovation, and adaptability, aiming to provide valuable insights and decision support across various market conditions. Potential users are encouraged to evaluate Universal Algo within the context of their overall trading approach and objectives.
Momentum Alligator 4h Bitcoin StrategyOverview
The Momentum Alligator 4h Bitcoin Strategy is a trend-following trading system that operates on dual time frames. It utilizes the 1D Williams Alligator indicator to identify the prevailing major price trend and seeks trading opportunities on the 4-hour (4h) time frame when the momentum is turning up. The strategy is designed to close trades if the trend fails to develop or holding position if price continues increasing without any significant correction. Note that this strategy is specifically tailored for the 4-hour time frame.
Unique Features
2-layers market noise filtering system: Trades are only initiated in the direction of the 1D trend, determined by the Williams Alligator indicator. This higher time frame confirmation filters out minor trade signals, focusing on more substantial opportunities. At the same time, strategy has additional filter on 4h time frame with Awesome Oscillator which is showing the current price momentum.
Flexible Risk Management: The strategy exclusively opens long positions, resulting in fewer trades during bear markets. It incorporates a dynamic stop-loss mechanism, which can either follow the jaw line of the 4h Alligator or a user-defined fixed stop-loss. This flexibility helps manage risk and avoid non-trending markets.
Methodology
The strategy initiates a long position when the d-line of Stochastic RSI crosses up it's k-line. It means that there is a high probability that price momentum reversed from down to up. To avoid overtrading in potentially choppy markets, it skips the next two trades following a winning trade, anticipating sideways movement after a significant price surge.
This strategy has two layers trades filtering system: 4h and 1D time frames. The first one is awesome oscillator. It shall be increasing and value has to be higher than it's 5-period SMA. This is an additional confirmation that long trade is opened in the direction of the current momentum. As it was mentioned above, all entry signals are validated against the 1D Williams Alligator indicator. A trade is only opened if the price is above all three lines of the 1D Alligator, ensuring alignment with the major trend.
A trade is closed if the price hits the 4h jaw line of the Alligator or reaches the user-defined stop-loss level.
Risk Management
The strategy employs a combined approach to risk management:
It allows positions to ride the trend as long as the price continues to move favorably, aiming to capture significant price movements. It features a user-defined stop-loss parameter to mitigate risks based on individual risk tolerance. By default, this stop-loss is set to a 2% drop from the entry point, but it can be adjusted according to the trader's preferences.
Justification of Methodology
This strategy leverages Stochastic RSI on 4h time frame to open long trade when momentum started reversing to the upside. On the one hand, Stochastic RSI is one of the most sensitive indicator, which allows to react fast on the potential trend reversal. On the other hand, this indicator can be too sensitive and provide a lot of false trend changing signals. To eliminate this weakness we use two-layers trades filtering system.
The first layer is the 4h Awesome oscillator. This is less sensitive momentum indicator. Usually it starts increasing when price has already passed significant distance from the actual reversal point. The strategy opens long trade only is Awesome oscillator is increasing and above it's 5-period SMA. This approach increases the probability to filter the false signals during the choppy market or if the reversal is false.
The second layer filter is the Williams Alligator indicator on 1D time frame. The 1D Alligator serves as a filter for identifying the primary trend and increases probability to avoid the trades with low potential because trading against major trend usually is more risky. It's much better to catch the trend continuation than local bounce.
Last but not least feature of this strategy is close trades condition. It uses the flexible approach. First of all, user can set up the fixed stop-loss according to his own risk-tolerance, by default this value is 2% of price movement. It restricts the potential loss at the moment when trade has just been opened. Moreover strategy utilizes the 4h Williams Alligator's jaw line to exit the trade. If price fell below it trade is closed. This approach helps to not keep open trade if trend is not developing and hold it if price continues going up.
Backtest Results:
Operating window: Date range of backtests is 2021.01.01 - 2024.05.01. It is chosen to let the strategy to close all opened positions.
Commission and Slippage: Includes a standard Binance commission of 0.1% and accounts for possible slippage over 5 ticks.
Initial capital: 10000 USDT
Percent of capital used in every trade: 50%
Maximum Single Position Loss: -3.04%
Maximum Single Profit: +29.67%
Net Profit: +6228.01 USDT (+62.28%)
Total Trades: 118 (24.58% win rate)
Profit Factor: 1.71
Maximum Accumulated Loss: 1527.69 USDT (-11.52%)
Average Profit per Trade: 52.78 USDT (+0.89%)
Average Trade Duration: 60 hours
These results are obtained with realistic parameters representing trading conditions observed at major exchanges such as Binance and with realistic trading portfolio usage parameters.
How to Use:
Add the script to favorites for easy access.
Apply to the 4h timeframe desired chart (optimal performance observed on the BTC/USDT).
Configure settings using the dropdown choice list in the built-in menu.
Set up alerts to automate strategy positions through web hook with the text: {{strategy.order.alert_message}}
Disclaimer:
Educational and informational tool reflecting Skyrex commitment to informed trading. Past performance does not guarantee future results. Test strategies in a simulated environment before live implementation
Trend Crawler with Dynamic TP and Trailing Stop### Description of "Trend Crawler with Dynamic TP and Trailing Stop"
#### Overview
The "Trend Crawler with Dynamic TP and Trailing Stop" is a comprehensive trading strategy designed for medium-frequency trading on various timeframes and markets. It utilizes a combination of trend identification and volatility analysis to determine optimal entry and exit points, aiming to maximize profitability by adapting to changing market conditions.
#### Strategy Mechanics
1. **Moving Averages**: Users can select between Simple Moving Average (SMA) and Exponential Moving Average (EMA) to define the trend. The strategy uses two moving averages (fast and slow) to identify the trend direction. A crossover of the fast MA above the slow MA signals a potential bullish trend, while a crossunder signals a bearish trend.
2. **Volume Analysis**: The strategy incorporates volume analysis to confirm the strength of the trend. It calculates a standard deviation of volume from its moving average to detect significant increases in trading activity, which supports the trend direction indicated by the MAs.
3. **Price Spread and RSI**: It uses the price spread (difference between the close and open of each bar) and the Relative Strength Index (RSI) to filter entries based on market momentum and overbought/oversold conditions. This helps in refining the entries to avoid weak or overly extended moves.
4. **Dynamic Take Profit and Trailing Stop**:
- **Trailing Stop**: As the position moves into profit, the strategy adjusts the stop loss dynamically to protect gains, using a trailing stop mechanism.
- **Dynamic Take Profit**: The take profit levels are adjusted based on the volatility (measured by the standard deviation of the price spread) to capture maximum profit from significant moves.
#### Usage
To use the strategy:
- Set the desired moving average type and lengths according to the asset and timeframe being traded.
- Adjust the RSI thresholds to match the market's volatility and trading style.
- Set the base take profit and stop loss levels along with the trailing stop distance based on risk tolerance and trading objectives.
#### Justification for Originality
While the use of moving averages, RSI, and volume analysis may be common, the integration of these elements with dynamic adjustments for take profit and trailing stops based on real-time volatility analysis offers a unique approach. The strategy adapts not just to trend direction but also to the market's momentum and volatility, providing a tailored trading solution that goes beyond standard indicator-based strategies.
#### Strategy Results and Settings
Backtesting should be conducted with realistic account sizes and include considerations for commission and slippage to ensure that the results are not misleading. Risk per trade should be kept within a sustainable range (ideally less than 5% of account equity), and the strategy should be tested over a sufficient sample size (at least 100 trades) to validate its effectiveness.
#### Chart Presentation
The script’s output includes:
- Colored backgrounds to indicate bullish or bearish market conditions.
- Plots of trailing stops to visually manage risk.
- Entry points are marked with shapes on the chart, providing clear visual cues for trading decisions.
#### Conclusion
This strategy offers traders a robust framework for trend following with enhanced risk management through dynamic adjustments based on real-time market analysis. It's designed to be versatile and adaptable to a wide range of markets and trading styles, providing traders with a tool that not only follows trends but also adapts to market changes to secure profits and reduce losses.
Stochastic Z-Score Oscillator Strategy [TradeDots]The "Stochastic Z-Score Oscillator Strategy" represents an enhanced approach to the original "Buy Sell Strategy With Z-Score" trading strategy. Our upgraded Stochastic model incorporates an additional Stochastic Oscillator layer on top of the Z-Score statistical metrics, which bolsters the affirmation of potential price reversals.
We also revised our exit strategy to when the Z-Score revert to a level of zero. This amendment gives a much smaller drawdown, resulting in a better win-rate compared to the original version.
HOW DOES IT WORK
The strategy operates by calculating the Z-Score of the closing price for each candlestick. This allows us to evaluate how significantly the current price deviates from its typical volatility level.
The strategy first takes the scope of a rolling window, adjusted to the user's preference. This window is used to compute both the standard deviation and mean value. With these values, the strategic model finalizes the Z-Score. This determination is accomplished by subtracting the mean from the closing price and dividing the resulting value by the standard deviation.
Following this, the Stochastic Oscillator is utilized to affirm the Z-Score overbought and oversold indicators. This indicator operates within a 0 to 100 range, so a base adjustment to match the Z-Score scale is required. Post Stochastic Oscillator calculation, we recalibrate the figure to lie within the -4 to 4 range.
Finally, we compute the average of both the Stochastic Oscillator and Z-Score, signaling overpriced or underpriced conditions when the set threshold of positive or negative is breached.
APPLICATION
Firstly, it is better to identify a stable trading pair for this technique, such as two stocks with considerable correlation. This is to ensure conformance with the statistical model's assumption of a normal Gaussian distribution model. The ideal performance is theoretically situated within a sideways market devoid of skewness.
Following pair selection, the user should refine the span of the rolling window. A broader window smoothens the mean, more accurately capturing long-term market trends, while potentially enhancing volatility. This refinement results in fewer, yet precise trading signals.
Finally, the user must settle on an optimal Z-Score threshold, which essentially dictates the timing for buy/sell actions when the Z-Score exceeds with thresholds. A positive threshold signifies the price veering away from its mean, triggering a sell signal. Conversely, a negative threshold denotes the price falling below its mean, illustrating an underpriced condition that prompts a buy signal.
Within a normal distribution, a Z-Score of 1 records about 68% of occurrences centered at the mean, while a Z-Score of 2 captures approximately 95% of occurrences.
The 'cool down period' is essentially the number of bars that await before the next signal generation. This feature is employed to dodge the occurrence of multiple signals in a short period.
DEFAULT SETUP
The following is the default setup on EURAUD 1h timeframe
Rolling Window: 80
Z-Score Threshold: 2.8
Signal Cool Down Period: 5
Stochastic Length: 14
Stochastic Smooth Period: 7
Commission: 0.01%
Initial Capital: $10,000
Equity per Trade: 40%
FURTHER IMPLICATION
The Stochastic Oscillator imparts minimal impact on the current strategy. As such, it may be beneficial to adjust the weightings between the Z-Score and Stochastic Oscillator values or the scale of Stochastic Oscillator to test different performance outcomes.
Alternative momentum indicators such as Keltner Channels or RSI could also serve as robust confirmations of overbought and oversold signals when used for verification.
RISK DISCLAIMER
Trading entails substantial risk, and most day traders incur losses. All content, tools, scripts, articles, and education provided by TradeDots serve purely informational and educational purposes. Past performances are not definitive predictors of future results.
Pullback_Power [JackTz]Welcome to Pullback_Power
Pullback_Power is a scalping strategy designed to capitalize on market retracements while incorporating unique dynamic features to enhance profitability.
Calculation
Pullback_Power purely uses moving averages to calculate both entry and exits. Exits can also be set to fixed percentages for both take profit and stop loss.
How the Strategy Works
Statistics show that markets normally do a recovery after each drop. Crypto markets can easily drop up to 20% within a few hours and then do a complete or partial recovery. Pullback_Power utilizes this known pattern alongside pyramiding. The strategy aims to catch one or more entries when the price drops, hoping to make profits when the market recovers from the drop. The fixed take profit and stop loss can be used to define your risk management, while the dynamic exit opportunity is riskier but provides the ability to stay in the trade longer while it recovers. Pullback_Power can make up to four entries. This means it utilizes pyramiding to spread out the entry points, but every exit is a full exit. It is not possible to partially exit.
Utility
Pullback_Power is a scalping strategy suitable for traders who operate with small trades and don't want to stay in the market for too long. Pullback_Power offers precise signals with no repainting. The strategy thrives in volatility, so crypto pairs might yield the best results, although this strategy can be adapted to work on all pairs and markets.
How to Automate It
Pullback_Power utilizes the standard placeholders of strategies on TradingView. This enables the trader to add every data point into a webhook, making it fully flexible to suit every trader's needs. To automate, create an alert, set the webhook URL, and add the JSON body needed for the webhook. An example of a simple JSON webhook with some of the standard strategy placeholders:
{
"side": "{{strategy.order.action}}",
"symbol": "{{ticker}}",
"amount": "{{strategy.order.contracts}}"
}
Read about all the standard placeholders that you can use here: TradingView - Standard strategy placeholders
Originality
Pullback_Power is unique in its ability to create precise signals without repainting while maintaining a solid approach to the pullback strategy. Its simplicity not only makes the strategy easy to use and understand but also highly effective. The simplicity reduces inputs, eliminating overfitting and limits each input to avoid incorrect usage. Many times, default settings are enough to achieve good backtesting results on almost all pairs available. Pullback_Power also differs from many other strategies by its solid code, which enhances performance and provides more reliable backtesting. The clean code increases the resilience and precision of the entries, making it less prone to errors.
Many pullback/scalping strategies normally only works on specific scopes of timeframes or pairs. Pullback_Power can easily be adapted to work on almost every scenario. The biggest change needed is the length of the moving average. The lower the timeframe, the higher a length is needed for proper results. I.e. on a 2H timeframe a length of 3 can yield good results. On a 5min timeframe the length might need to be as high as 70.
How to Use
To use Pullback_Power, add the script to your trading chart. By default, Pullback_Power opens four orders to optimize trade opportunities with a default fee value set at 0.1%. You can change these default settings in the Settings window under the Properties tab. To tailor Pullback_Power to your individual trading style, navigate to the Settings under the Input tab. Here you can configure various inputs to fit your trading style.
- Backtest settings , Start Date:
Defines the date of when the calculation starts. Use this to set the date of when the first trade could potentially emit.
- Backtest settings , End Date:
Defines the date of when the calculation ends. If there are any open trades after this date the close calculations are still live. It only makes sure that new orders cannot be opened after this date.
- Backtest settings , Only trade on weekdays:
This is a toggle you can enable or disable. If enabled it only allows new entries to happen during the normal week days, meaning Monday, Tuesday, Wednesday, Thursday and Friday.
Disable this to enable the script to open trades on all 7 days of the week.
- Open settings , Use dynamic long positions:
This toggle allows you to enable or disable the pullback level calculations after first trade.
If enabled, the calculations of level 2, 3 and 4 continues to happen after each bar, making the levels follow the price with the moving averages calculations.
If disabled, the calculations of the levels stop after the first trade. This means that the levels calculation at the point of the first trade stay fixed until all trades are closed.
You can see the difference of the green lines on the chart when you toggle this flag.
- Open settings , Data type:
This is the bar data used for the moving average calculation when opening trades. The possible data types are Open, High, Low, Close, HL2, HLC3, OHLC4, OC2 and HC2.
- Open settings , Source type:
This is the source used to calculate the moving average. The types available are: SMA, PCMA, EMA, WMA, DEMA, ZLEMA and HMA.
- Open settings , Length:
This is the length used for the moving average calculations. 3 means it takes the last 3 bars of historical data for the calculation.
- Open settings , Offset:
This defines if the calculation should use an offset for the historical data. This does not use a look-forward feature, but a look-backward feature. To prevent any possible repaints the offset can only be positive, not negative.
For instance, if the length is 3 and the offset is 0 the calculation is made from the last 3 bars, making it bar1, bar2 and bar3. If the length is 3 and the offset is 1 the calculation is made from bar2, bar3, and bar4 – offsetting the calculation by 1 bar.
- Leverage settings , Leverage liquidation (1-125):
The script itself does not handle any custom leverage calculation – this must be done in the Properties tabs and increasing the order size.
This setting is made to test a possible liquidation event if using leverage.
By setting this to higher than 1, a red line is visible after the first trade on the chart. This indicates the liquidation price.
If this setting is set to 25, the script will calculate the liquidation price from a x25 leverage. If this price is hit, the scripts stops emitting any orders and the background turns red.
You can use this to test if your settings could handle a certain level of leverage.
- Pullback settings , Pullback 1, 2, 3 and 4:
Each of these settings defines the entry price of each pullback level. If Pullback 1 is set to -6 it means that the moving average calculation should be 6% lower than the actual price.
The same logic applies to Pullback 2, 3 and 4.
Setting any level to 0 will disable the level – eliminating any orders to emit on that level.
This can be used to change the level of pyramiding down from 4 if needed.
If you do this, remember to also change the order size and the pyramiding value in the Properties tab accordingly.
- Close settings , Use dynamic TP and SL:
If enabled, script will exit all orders using the same but separate algorithm for moving averages. This enables the user to define if you want the orders to be closed if the price level of this moving average is hit. The price level for this calculation is visible on the chart by the blue line.
Although you can change the length and offset, as described underneath, this calculation uses the same data and source type defined in the Open settings area.
- Close settings , Length, Close:
This is the length used for the closing moving average calculations. 3 means it takes the last 3 bars of historical data for the calculation.
- Close settings , Offset, Close:
This defines if the calculation for the closing moving average should use an offset for the historical data. Just as the offset used for opening order, this does not use a look-forward feature, but a look-backward feature. To prevent any possible repaints the offset can only be positive, not negative.
For instance, if the length is 3 and the offset is 0 the calculation is made from the last 3 bars, making it bar1, bar2 and bar3. If the length is 3 and the offset is 1 the calculation is made from bar2, bar3, and bar4 – offsetting the calculation by 1 bar.
- Close settings , Use TakeProfit:
This toggle enables/disables a fixed take profit percentage.
- Close settings , TP %:
This sets the wanted % to reach on a take profit. This setting is ignored if the toggle above is disabled.
- Close settings , Use StopLoss:
This toggle enables/disables a fixed stop loss percentage.
- Close settings , SL %:
This sets the wanted % to reach on a stop loss. This setting is ignored if the toggle above is disabled.
Exit on Same Bar as Entry
By default, the script doesn't emit any exit orders on the same bar as the first entry order. Enable "Recalculation: After order is filled" to change this behavior.
Troubleshooting
While Pullback_Power is designed to provide reliable trading signals, you may encounter rare issues. One such issue could be receiving an error message stating "can't open orders with 0 or negative qty." If you encounter this error, it is likely due to specific conditions on the selected timeframe. To resolve this issue, change the timeframe on your trading chart.
Underlying Principles and Value Proposition
Pullback_Power leverages moving averages and volatility behavior to identify market retracements and capitalize on them. The strategy is rooted in the understanding that markets often experience temporary reversals or "pullbacks" before resuming their primary trend. By identifying these pullbacks and entering trades at opportune moments, Pullback_Power aims to capture quick profits from short-term market movements.
The dynamic and fixed calculations of Take Profit (TP) and Stop Loss (SL) levels enhances risk management, ensuring that potential losses are controlled while allowing room for profits to grow. The adaptive approach using the moving averages considers current market conditions, making the strategy flexible and responsive to changing volatility.
Moreover, Pullback_Power's non-repainting nature ensures the reliability of its signals, eliminating hindsight bias and providing traders with actionable insights based on real-time market data.
The strategy's simplicity and effectiveness make it accessible for traders of all experience levels. Whether you're a beginner looking to start scalping or an experienced trader seeking to diversify your trading approach, Pullback_Power offers a balanced blend of simplicity and sophistication to help you navigate the markets with confidence.
By focusing on clear, transparent principles and offering practical tools for risk management, Pullback_Power aims to provide tangible value to traders, empowering them to make informed decisions and optimize their trading outcomes.
Thank you for choosing Pullback_Power. I wish you successful trading!
Strategy Container_Variable Pyramiding & Leverage [Tradingwhale]This is a strategy container . It doesn’t provide a trading strategy. What it does is provide functionality that is not readily available with standard strategy ’shells.’
More specifically, this Strategy Container enables Tradingview users to create trading strategies without knowing any Pine Script code .
Furthermore, you can use most indicators on tradingview to build a strategy without any coding at all, whether or not you have access to the code.
To illustrate a possible output in the image (buy and sell orders) of this strategy container, we are using here an indicator that provides buy and sell signals, only for illustration purposes. Again, this is a strategy container, not a strategy. So we need to include an indicator with this published strategy to be able to show the strategy execution.
What can you do with this strategy container? Please read below.
Trade Direction
You can select to trade Long trades only, Short trades only, or both, assuming that whatever strategy you create with this container will produce buy and sell signals.
Exit on Opposite
You can select if Long signals cause the exit of Short positions and vice versa. If you turn this on, then a sell/short signal will cause the closing of your entire long position, and a buy/long signal will cause the closing of your entire short position.
Use external data sources (indicators) to (a) import signals, or (b) create trading signals using almost any of the indicators available on Tradingview.
Option 1:
When you check the box ‘Use external indicator Buy & Sell signals?’ and continue to select an external indicator that plots LONG/BUY signals as value '1' and SHORT/SELL signals as value '-1, then this strategy container will use those signals for the strategy, in combination with all other available settings.
Here an example of code in an indicator that you could use to import signals with this strategy container:
buy = long_cond and barstate.isconfirmed
sell = short_cond and barstate.isconfirmed
//—------- Signal for Strategy
signal = buy ? 1 : sell ? -1 : 0
plot(plot_connector? signal : na, title="OMEGA Signals", display = display.none)
Option 2:
You can create buy/long and sell/short signals from within this strategy container under the sections called “ Define 'LONG' Signal ” and “ Define 'SHORT' Signal .”
You can do this with a single external indicator, by comparing two external indicators, or by comparing one external indicator with a fixed value. The indicator/s you use need to be on the same chart as this strategy container. You can add up to two (2) external indicators that can be compared to each other at a time. A checkbox allows you to select whether the logical operation is executed between Source #1 and #2, between Source # 1 and an absolute value, or just by analyzing the behavior of Source #1.
Without an image of the strategy container settings it’s a bit hard to explain. However, below you see a list of all possible operations.
Operations available , whenever possible based on source data, include:
- "crossing"
- "crossing up"
- "crossing down"
- "rejected from resistance (Source #1) in the last bar", which means ‘High’ was above Source #1 (resistance level) in the last completed bar and 'Close' (current price of the symbol) is now below Source #1" (resistance level).
- "rejected from resistance (Source #1) in the last 2 bars", which means ‘High’ was above Source #1 (resistance level) in one of the last two (2) completed bars and 'Close' (current price of the symbol) is now below Source #1" (resistance level).
- "rejected from support (Source #1) in the last bar" --- similar to above except with Lows and rejection from support level
- "rejected from support (Source #1) in the last 2 bars" --- similar to above except with Lows and rejection from support level
- "greater than"
- "less than"
- "is up"
- "is down"
- "is up %"
- "is down %"
Variable Pyramiding, Leverage, and Pyramiding Direction
Variable Pyramiding
With this strategy container, you can define how much capital you want to invest for three consecutive trades in the same direction (pyramiding). You can define what percentage of your equity you want to invest for each pyramid-trade separately, which means they don’t have to be identical.
As an example: You can invest 5% in the first trade let’s call this pyramid trade #0), 10% in the second trade (pyramid trade #1), and 7% in the third trade (pyramid trade #2), or any other combination. If your trading strategy doesn’t produce pyramid trading opportunities (consecutive trades in the same direction), then the pyramid trade settings won’t come to bear for the second and third trades, because only the first trade will be executed with each signal.
Leverage
You can enter numbers for the three pyramid trades that are combined greater than 100%. Once that is the case, you are using leverage in your trades and have to manage the risk that is associated with that.
Pyramiding Direction
You can decide to scale only into Winners, Losers, or Both. Pyramid into a:
- Losers : A losing streak occurs when the price of the underlying security at the current signal is lower than the average cost of the position.
- Winners : A winning streak occurs when the price of the underlying security at the current signal is higher than the average cost of the position.
- Both means that you are selecting to scale/pyramid into both Winning and Losing streaks.
Other Inputs that influence signal execution:
You can choose to turn these on or off.
1. Limit Long exits with a WMA to stay longer in Long positions: If you check this box and enter a Length number (integer) for the WMA (Weighted Moving Average), then Long positions can only be exited with short signals when the current WMA is lower than on the previous bar/candle. Short signals sometimes increase with uptrends. We’re using this WMA here to limit short signals by adding another condition (WMA going down) for the short signal to be valid.
2. Maximum length of trades in the number of candles. Positions that have been in place for the specified number of trades are excited automatically.
3. Set the backtest period (from-to). Only trades within this range will be executed.
4. Market Volatility Adjustment Settings
- Use ATR to limit when Long trades can be entered (enter ATR length and Offset). We’re using the 3-day ATR here, with your entries for ATR length and offset. When the 3-day ATR is below its signal line, then Long trades are enabled; otherwise, they are not.
- Use VIX to limit when Short trades can be entered (enter VIX). If you select this checkbox, then Short trades will only be executed if the daily VIX is above your set value.
- Use Momentum Algo functions to limit Short trades. This uses the average distance of Momentum Highs and Lows over the lookback period to gauge whether markets are calm or swinging more profoundly. Based on that you can limit short entries to more volatile market regimes.
Set:
- Fast EMA and Slow EMA period lengths
- Number of left and right candles for High and Low pivots
- Lookback period to calculate the High/Low average and then the distance between the two.
The assumption here is that greater distances between momentum highs and lows correlate positively with greater volatility and greater swings in the underlying security.
Stop-Loss
Set separate stop-losses based on % for Long and Short positions. If the position loses X% since entry, then the position will be closed.
Take-Profit
Set separate take-profit levels based on % for Long and Short positions. If the position wins X% since entry, then the position will be closed.
OBVious MA Strategy [1000X Trader]Exploring OBV: The OBVious MA Strategy
Are you using On Balance Volume (OBV) effectively? OBV is a gift to traders. OBV often provides a leading signal at the outset of a trend, when compression in the markets produces a surge in OBV prior to increased volatility.
This strategy demonstrates one method of utilizing OBV to your advantage. I call it the "OBVious MA Strategy ” only because it is so simple in its mechanics. This is meant to be a demonstration, not a strategy to utilize in live trading, as the primary utility of the OBVious MA indicator is as a volume confirmation filter that complements other components of a strategy. That said, I felt useful to present this indicator in isolation in this strategy to demonstrate the power it holds.
Strategy Features:
• OBV is the core signal: this strategy revolves around the On Balance Volume indicator. OBV is a straightforward indicator: it registers a value by adding total volume traded on up candles, and subtracts total volume on down candles, generating a line by connecting those values. OBV was described in 1963 by Joe Granville in his book "Granville's New Key to Stock Market Profits” in which the author argues that OBV is the most vital key to success as a trader, as volume changes are a major predictor of price changes.
• Dual Moving Averages: here we use separate moving averages for entries and exits. This allows for more granular trade management; for example, one can either extend the length of the exit MA to hold positions longer, or shorten the MA for swifter exits, independently of the entry signals.
Execution: long trades are taken when the OBV line crosses above the Long Entry Moving Average of the OBV. Long exits occur when the OBV line crosses under the Long Exit MA of the OBV. Shorts enter on a cross below the Short Entry MA, and exit on a cross above the Short Exit MA.
• Directional Trading: a direction filter can be set to "long" or "short," but not “both”, given that there is no trend filter in this strategy. When used in a bi-directional strategy with a trend filter, we add “both” to the script as a third option.
Application:
While this strategy outlines entry and exit conditions based on OBV crossovers with designated moving averages, is is, as stated, best used in conjunction with a supporting cast of confirmatory indicators (feel free to drop me a note and tell me how you've used it). It can be used to confirm entries, or you might try using it as a sole exit indicator in a strategy.
Visualization:
The strategy includes conditional plotting of the OBV MAs, which plot based on the selected trading direction. This visualization aids in understanding how OBV interacts with the set moving averages.
Further Discussion:
We all know the importance of volume; this strategy demonstrates one simple yet effective method of incorporating the OBV for volume analysis. The OBV indicator can be used in many ways - for example, we can monitor OBV trend line breaks, look for divergences, or as we do here, watch for breaks of the moving average.
Despite its simplicity, I'm unaware of any previously published cases of this method. The concept of applying MAs or EMAs to volume-based indicators like OBV is not uncommon in technical analysis, so I expect that work like this has been done before. If you know of other similar indicators or strategies, please mention in the comments.
One comparable strategy that uses EMAs of the OBV is QuantNomad’s "On Balance Volume Oscillator Strategy ", which uses a pair of EMAs on a normalized-range OBV-based oscillator. In that strategy, however, entries and exits occur on one EMA crossing the other, which places trades at distinctly different times than crossings of the OBV itself. Both are valid approaches with strength in simplicity.
Trend Deviation strategy - BTC [IkkeOmar]Intro:
This is an example if anyone needs a push to get started with making strategies in pine script. This is an example on BTC, obviously it isn't a good strategy, and I wouldn't share my own good strategies because of alpha decay.
This strategy integrates several technical indicators to determine market trends and potential trade setups. These indicators include:
Directional Movement Index (DMI)
Bollinger Bands (BB)
Schaff Trend Cycle (STC)
Moving Average Convergence Divergence (MACD)
Momentum Indicator
Aroon Indicator
Supertrend Indicator
Relative Strength Index (RSI)
Exponential Moving Average (EMA)
Volume Weighted Average Price (VWAP)
It's crucial for you guys to understand the strengths and weaknesses of each indicator and identify synergies between them to improve the strategy's effectiveness.
Indicator Settings:
DMI (Directional Movement Index):
Length: This parameter determines the number of bars used in calculating the DMI. A higher length may provide smoother results but might lag behind the actual price action.
Bollinger Bands:
Length: This parameter specifies the number of bars used to calculate the moving average for the Bollinger Bands. A longer length results in a smoother average but might lag behind the price action.
Multiplier: The multiplier determines the width of the Bollinger Bands. It scales the standard deviation of the price data. A higher multiplier leads to wider bands, indicating increased volatility, while a lower multiplier results in narrower bands, suggesting decreased volatility.
Schaff Trend Cycle (STC):
Length: This parameter defines the length of the STC calculation. A longer length may result in smoother but slower-moving signals.
Fast Length: Specifies the length of the fast moving average component in the STC calculation.
Slow Length: Specifies the length of the slow moving average component in the STC calculation.
MACD (Moving Average Convergence Divergence):
Fast Length: Determines the number of bars used to calculate the fast EMA (Exponential Moving Average) in the MACD.
Slow Length: Specifies the number of bars used to calculate the slow EMA in the MACD.
Signal Length: Defines the number of bars used to calculate the signal line, which is typically an EMA of the MACD line.
Momentum Indicator:
Length: This parameter sets the number of bars over which momentum is calculated. A longer length may provide smoother momentum readings but might lag behind significant price changes.
Aroon Indicator:
Length: Specifies the number of bars over which the Aroon indicator calculates its values. A longer length may result in smoother Aroon readings but might lag behind significant market movements.
Supertrend Indicator:
Trendline Length: Determines the length of the period used in the Supertrend calculation. A longer length results in a smoother trendline but might lag behind recent price changes.
Trendline Factor: Specifies the multiplier used in calculating the trendline. It affects the sensitivity of the indicator to price changes.
RSI (Relative Strength Index):
Length: This parameter sets the number of bars over which RSI calculates its values. A longer length may result in smoother RSI readings but might lag behind significant price changes.
EMA (Exponential Moving Average):
Fast EMA: Specifies the number of bars used to calculate the fast EMA. A shorter period results in a more responsive EMA to recent price changes.
Slow EMA: Determines the number of bars used to calculate the slow EMA. A longer period results in a smoother EMA but might lag behind recent price changes.
VWAP (Volume Weighted Average Price):
Default settings are typically used for VWAP calculations, which consider the volume traded at each price level over a specific period. This indicator provides insights into the average price weighted by trading volume.
backtest range and rules:
You can specify the start date for backtesting purposes.
You can can select the desired trade direction: Long, Short, or Both.
Entry and Exit Conditions:
LONG:
DMI Cross Up: The Directional Movement Index (DMI) indicates a bullish trend when the positive directional movement (+DI) crosses above the negative directional movement (-DI).
Bollinger Bands (BB): The price is below the upper Bollinger Band, indicating a potential reversal from the upper band.
Momentum Indicator: Momentum is positive, suggesting increasing buying pressure.
MACD (Moving Average Convergence Divergence): The MACD line is above the signal line, indicating bullish momentum.
Supertrend Indicator: The Supertrend indicator signals an uptrend.
Schaff Trend Cycle (STC): The STC indicates a bullish trend.
Aroon Indicator: The Aroon indicator signals a bullish trend or crossover.
When all these conditions are met simultaneously, the strategy considers it a favorable opportunity to enter a long trade.
SHORT:
DMI Cross Down: The Directional Movement Index (DMI) indicates a bearish trend when the negative directional movement (-DI) crosses above the positive directional movement (+DI).
Bollinger Bands (BB): The price is above the lower Bollinger Band, suggesting a potential reversal from the lower band.
Momentum Indicator: Momentum is negative, indicating increasing selling pressure.
MACD (Moving Average Convergence Divergence): The MACD line is below the signal line, signaling bearish momentum.
Supertrend Indicator: The Supertrend indicator signals a downtrend.
Schaff Trend Cycle (STC): The STC indicates a bearish trend.
Aroon Indicator: The Aroon indicator signals a bearish trend or crossover.
When all these conditions align, the strategy considers it an opportune moment to enter a short trade.
Disclaimer:
THIS ISN'T AN OPTIMAL STRATEGY AT ALL! It was just an old project from when I started learning pine script!
The backtest doesn't promise the same results in the future, always do both in-sample and out-of-sample testing when backtesting a strategy. And make sure you forward test it as well before implementing it!
Furthermore this strategy uses both trend and mean-reversion systems, that is usually a no-go if you want to build robust trend systems .
Don't hesitate to comment if you have any questions or if you have some good notes for a beginner.
Ichimoku Clouds Strategy Long and ShortOverview:
The Ichimoku Clouds Strategy leverages the Ichimoku Kinko Hyo technique to offer traders a range of innovative features, enhancing market analysis and trading efficiency. This strategy is distinct in its combination of standard methodology and advanced customization, making it suitable for both novice and experienced traders.
Unique Features:
Enhanced Interpretation: The strategy introduces weak, neutral, and strong bullish/bearish signals, enabling detailed interpretation of the Ichimoku cloud and direct chart plotting.
Configurable Trading Periods: Users can tailor the strategy to specific market windows, adapting to different market conditions.
Dual Trading Modes: Long and Short modes are available, allowing alignment with market trends.
Flexible Risk Management: Offers three styles in each mode, combining fixed risk management with dynamic indicator states for versatile trade management.
Indicator Line Plotting: Enables plotting of Ichimoku indicator lines on the chart for visual decision-making support.
Methodology:
The strategy utilizes the standard Ichimoku Kinko Hyo model, interpreting indicator values with settings adjustable through a user-friendly menu. This approach is enhanced by TradingView's built-in strategy tester for customization and market selection.
Risk Management:
Our approach to risk management is dynamic and indicator-centric. With data from the last year, we focus on dynamic indicator states interpretations to mitigate manual setting causing human factor biases. Users still have the option to set a fixed stop loss and/or take profit per position using the corresponding parameters in settings, aligning with their risk tolerance.
Backtest Results:
Operating window: Date range of backtests is 2023.01.01 - 2024.01.04. It is chosen to let the strategy to close all opened positions.
Commission and Slippage: Includes a standard Binance commission of 0.1% and accounts for possible slippage over 5 ticks.
Maximum Single Position Loss: -6.29%
Maximum Single Profit: 22.32%
Net Profit: +10 901.95 USDT (+109.02%)
Total Trades: 119 (51.26% profitability)
Profit Factor: 1.775
Maximum Accumulated Loss: 4 185.37 USDT (-22.87%)
Average Profit per Trade: 91.67 USDT (+0.7%)
Average Trade Duration: 56 hours
These results are obtained with realistic parameters representing trading conditions observed at major exchanges such as Binance and with realistic trading portfolio usage parameters. Backtest is calculated using deep backtest option in TradingView built-in strategy tester
How to Use:
Add the script to favorites for easy access.
Apply to the desired chart and timeframe (optimal performance observed on the 1H chart, ForEx or cryptocurrency top-10 coins with quote asset USDT).
Configure settings using the dropdown choice list in the built-in menu.
Set up alerts to automate strategy positions through web hook with the text: {{strategy.order.alert_message}}
Disclaimer:
Educational and informational tool reflecting Skyrex commitment to informed trading. Past performance does not guarantee future results. Test strategies in a simulated environment before live implementation
SILVER Midnight Candle Color Strategy 1-Hour Delay and SL/TP Overview:
The "Midnight Candle Color Strategy with 1-Hour Delay and SL/TP" is a unique trading strategy designed for the Forex market. This strategy capitalizes on the color of the midnight candle based on New York time, making trade decisions one hour later, at 1:00 AM.
Key Features:
Time Zone Adjustment: Automatically adjusts to New York time (UTC-5 or UTC-4 during Daylight Saving Time).
Midnight Candle Analysis: Utilizes the color of the midnight candle to gauge market sentiment.
Trade Execution at 1 AM: Trades are executed one hour after midnight based on the previous day's candle color.
Strategic SL/TP: Incorporates predefined stop loss (SL) and take profit (TP) levels for each trade.
How It Works:
The script first determines whether the current bar represents 12:00 AM or 1:00 AM in New York time.
At midnight, it records the color of the candle (green for bullish, red for bearish).
At 1:00 AM, the strategy:
Enters a long position if the midnight candle was green, with specific TP and SL settings.
Enters a short position if the midnight candle was red, again with defined TP and SL.
Visualization:
Optional markers are plotted on the chart for easy visualization of the strategy's entry points at midnight and 1 AM.
Usage Tips:
Ideal for traders focusing on overnight price movements and early morning trends.
Best suited for SILVER trading due to the 24-hour trading cycle.
We recommend backtesting the strategy with historical data to evaluate performance.
Disclaimer:
This strategy is provided for educational purposes and should not be considered as financial advice. Users should conduct their own research and exercise caution while trading. Past performance is not indicative of future results.
I´m not a signal service, however I´m sharing my signals. For free. If you wish to buy something, contact some other signalist, preferably with 5-10-15-20K followers, selling signals on the premium channel, but in reality not trading them themselves. If you will realise after few blown account that something is wrong, ask yourself why is that. Trading is not pushing the buy-sell button and drinking tequila on the beach. If you want to learn, you know what to do.